Markus Humm wrote:
> Hello,
> regarding my question from last weekend only a part was answered so
> far. The thing is now: if several TTimers get fired at the same time
> and all of them want to write into a shared TStringList-Type buffer
> (okay, it's in a wrapper class), how to make sure only one at a time
> gets acces and doesn't mess up the thing? 

I'm not sure what you mean.

Multiple timers created in the same thread cannot fire at the same
time. However if they call a non-blocking handler routine
it may be necessary to serialize execution of the handler, this
cannot be achieved by any thread synchronization method. 

Don't use TTimer in any worker thread since it is NOT thread-safe!
It calls Classes.AllocateHwnd() and Classes.DeallocateHwnd(), both
write to a global, unprotected variable. 

Similar applies to ICS v5, NOFORMS must be defined in order
to force ICS v5 to use it's own thread-safe window allocation/
deallocation procedures.

Arno Garrels [TeamICS]

> because the critical
> section will only guard this against the thread which reads out the
> entries and afterwards deletes them.
> So what to do here?
> Greetings
> Markus
To unsubscribe or change your settings for TWSocket mailing list
please goto
Visit our website at

Reply via email to