[fpc-devel] Threads and alot of crap continued

Michael Schnell mschnell at lumino.de
Tue Nov 7 09:59:10 CET 2006

Hi FPC experts.

I read this thread in the list archive and as I'm very interested in 
this topic (since years), I'm very happy do see this evolving and would 
like to provide some comment (and maybe contribute some code once I'm up 
to speed with FPC) and, of course, ask questions.

1) How is the state on this issue? Does the latest released version of 
the FPC RTL already provide a decent implementation of the threading 
primitives known from Delphi ? (e.g. TThread.Suspend, 
TThread.Synchronize, TEvent, TCriticalSection, TThreadList, etc) as well 
for Linux as for Windows etc.? What about WinCE on ARM and Linux on ARM 
and 68K ?

2) IMHO FPC is a lot about platform independency. In Delphi/Kylix there 
never was a decent platform independent way of inter thread message 
passing. Are there any plans on this ? IMHO a perfect way would need a 
language enhancement (a way to fire events that are to run in another 
thread context, which would also involve enhancing/creating the message 
scheduler in the RTL to work not only for the main thread but for any 
worker thread, too), but supposedly a thing easier to agree about could 
be something like a "TThreadMessage" class in the RTL that fires an 
event in the main thread when a message from a worker thread comes in 
and for worker threads provides a means to check if a message is 
available and optionally wait for one.

3) Does TTimer work in Linux, now, ? Last time I checked I did not get 
it running.


More information about the fpc-devel mailing list