[Interest] QFileSystemWatcher malfunctioning

Scott Aron Bloom Scott.Bloom at onshorecs.com
Fri Feb 3 17:51:18 CET 2012


Yes, no, maybe.  I didn't write SignalBlocker...

 

As has been stated, keep a MD5 of the file after you write it, and
ignore the file change notification if it hasn't changed..

 

From: interest-bounces+scott.bloom=onshorecs.com at qt-project.org
[mailto:interest-bounces+scott.bloom=onshorecs.com at qt-project.org] On
Behalf Of Sujan Dasmahapatra
Sent: Thursday, February 02, 2012 10:10 PM
To: interest at qt-project.org
Subject: Re: [Interest] QFileSystemWatcher malfunctioning

 

 SignalBlocker blocker(plotgraphsdlg->watcher); //blocking the signal 

 Is the above code is sufficient to block the signal ????

On Fri, Feb 3, 2012 at 5:34 AM, Scott Aron Bloom
<Scott.Bloom at onshorecs.com> wrote:

I have found with windows at least, its instantaneous.  Essentially it
sets up a blocking win32 call, that gets release and emits the signal...

But it does take the event loop of the connected slots thread to be
running...


Scott

-----Original Message-----
From: interest-bounces+scott.bloom=onshorecs.com at qt-project.org
[mailto:interest-bounces+scott.bloom
<mailto:interest-bounces%2Bscott.bloom> =onshorecs.com at qt-project.org]
On

Behalf Of Andreas Pakulat
Sent: Thursday, February 02, 2012 3:54 PM
To: interest at qt-project.org
Subject: Re: [Interest] QFileSystemWatcher malfunctioning

On 02.02.12 15:23:53, Scott Aron Bloom wrote:
> QFileSystemWatcher DOES operate in a separate thread 100% certainly
> for windows, 99% for linux..
>
> Its been a while since I looked at the insides on linux.

All engines run in a separate thread and some of the engines have
multiple threads themselves again (win32 and dnotify) as far as I can
see from a quick grep.

However these threads could be delivering their signals directly instead
of delivering them through the event-queue, so there is actually a way
that the blocker really blocks signals.

But if the used backend is actually not triggered by the OS directly
when a filesystem change happens, i.e. if it takes a few ms for the OS
to notify the watcher (and thats definetly the case for the polling
backend) then signal blocking will not work.

Andreas

_______________________________________________
Interest mailing list
Interest at qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest
_______________________________________________
Interest mailing list
Interest at qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest





 

-- 
Thanks & Regards
Sujan Dasmahapatra
B.E. (Aeronautics)
Bangalore, India
Ph:91-9900839788
mail id : sujan.dasmahapatra at gmail.com
yahoo msn : dasmahapatra.aerodynamics at yahoo.co.in
icq # 556023244
skype:sujan.dasmahapatra at skyepe.com
<mailto:skype%3Asujan.dasmahapatra at skyepe.com> 
msn: sujan.dasmahapatra at hotmail.com

public profile :
http://in.linkedin.com/pub/sujan-dasmahapatra/17/269/aa6

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20120203/f3ef2b24/attachment.html>


More information about the Interest mailing list