[Lazarus] Even more radical suggestion regarding Event Queues

Michael Schnell mschnell at lumino.de
Fri Jan 21 12:35:00 CET 2011


On 01/21/2011 11:55 AM, Henry Vermaak wrote:
>
> Report a bug with a simple example program, please.
AFAIK, there already is a bug report on that in the bug tracker (I once 
read it but some days ago I failed to find it, though). Moreover it 
would be good to do a test with qt as well, before filing another report.
>
> Why do you think QueueAsyncCall isn't done? 
In the thread "Event handling example project: results for gtk2 and 
fpGUI" I already stated that it suffers from the same problem as 
TThread.Synchronize.

So in fact it might be a good idea to file another bug report.
I think it would be best to put the "Event handling example project" in 
the "examples" directory in the svn, so it can easily be used for 
testing and I can mention same in the bug report.

> As far as I can see, it just needs to wake up the main thread when a 
> message is queued (something I do manually for now). 
Hmm. If you do the same that synchronize does (i. e. call 
"WakeUpMainThread" ) I don't think it will work (with gkt).
> This bug is reported in http://bugs.freepascal.org/view.php?id=13120.
Supposedly this in fact is the bug report I had been reading (and failed 
to find as I searched for "synchronize). As (with gtk) the same issue 
can be seen with Synchronize, I'll just add a comment to this report.
>
> No one that knows lcl message loop internals have really commented on 
> how this must be solved.
But AFAIK, in the latest _binary_release_ of the LCL synchronize did 
work on gtk, so someone _has_ been working on that and did not notice 
that he broke it. :(

-Michael




More information about the Lazarus mailing list