[fpc-pascal] Main thread wait and CheckSynchronize
Jonas Maebe
jonas.maebe at elis.ugent.be
Mon May 17 16:14:39 CEST 2010
On 17 May 2010, at 16:00, Brad Campbell wrote:
> Michael Van Canneyt wrote:
>> I think that what you did is the only right solution. Synchronizing
>> threads is tricky, and the default mechanism is meant for GUI apps
>> where the main thread is the GUI thread.
>
> I wish there was a way for a thread to asynchronously notify the
> main thread there is a Synchronize() pending. On Linux I can insert
> an fd() for a pipe into the gtk event loop and poke data into the
> pipe from the thread. It's incredibly efficient and saves all the
> waiting and polling. I've not worked out how to do this on OSX or
> Win32 yet though.
If you use the timeout parameter from CheckSynchronize, you do get
that effect (if you pass high(longint) as timeout, then you only
"poll" if nothing happened for 2^31 miliseconds, which is about 24
days).
Jonas
More information about the fpc-pascal
mailing list