The synchronize method is simple but inefficient, it pauses your
thread until the main thread has time to execute your code and could
take some time until it does, i personally also dislike the fact that
one cannot call any procedure/function with any number of parameters
with synchronize.
I think mark proposed once the solution of using a List (StringList or
something else) in a synchronised manner with CriticalSections
protecting access to the list and this way creating a message system
similar to the OS one but this implementation is also not always
comfortable but it isn't blocking as synchronize, the problem is not
with the windows widgetset which is message based and quite thread
safe and one can easily use CriticalSections with Controls, Borland
started to make the VCL threadsafe but they didn't complete this task,
maybe LCL would be more popular if it was threadsafe, i do realise
it's a lot of work but it might be worth it.
Razvan
_________________________________________________________________
To unsubscribe: mail [EMAIL PROTECTED] with
"unsubscribe" as the Subject
archives at http://www.lazarus.freepascal.org/mailarchives