[fpc-pascal] FCGI MultiThreaded

Michael Schnell mschnell at lumino.de
Tue May 6 14:19:31 CEST 2014


On 05/05/2014 06:22 PM, Paul Breneman wrote:
> I'm glad to learn a little more from your recent messages.

As you are interested I am happy to provide some more information.

In msegui, the EventQueue is done using a decently structured construct 
of classes that allows for creating any type of information queues. As 
in Lazarus the GUI based WidgetTypes all use implement own dedicated 
event queue code, using an msegui based construct IMHO would only makes 
sense if all appropriate queues in the LCL would be done on that base. I 
of course am not in a position to trigger such a re-construction. So I 
gave up on that idea for such a "small" and seldom used Widget Type as I 
have in mind.

When doing a not GUI based Widget Type (for embedded and/or CGI use) 
using just the Event queue that is implemented in the fpc rtl, a very 
basic and rather inaccurate but  platform independent TTimer 
implementation could be done  managing the Timeout parameter of 
"CheckSynchronize" according to the needs of all active instances of 
TTimer. A more accurate implementation would need to use OS features 
such as timers or threads and push events onto the queue.

When doing such a WidgetType, "Application.QueueAsynCall" would need to 
be implemented in a way that it pushes events onto the said queue.

-Michael



More information about the fpc-pascal mailing list