On 06/06/2011 12:42 PM, [email protected] wrote:
By all means, you can do so, just don't expect me to create the event queue
Of course not if you don't need it for your projects. :)

As you know, for me it's a major design flow of the LCL, that the event queue is implemented separately within any Widget Type, instead of being a central object that offers appropriate hooks to all Widget Types (maybe "Windows" should better stay outside here.) With this in place, you would not need to bother :).

None of this requires the use of event queues or timers ?

Of course they do: the free running "embedded" functionality performs lot of stuff on in timed cycles and as a result of events generated by Threads.

Of course all this can be implemented according to other design paradigms, but the beauty of programming in Object Pascal / Lazarus / Delphi is doing as much as possible in main thread events and with that being freed from bothering about mutual access to objects (and using threads only very thoughtfully when it really makes sense), while not needing to bother about "busy" polling loops killing the system performance and/or leading to larger latency. OTOH, when porting Delphi projects, using this paradigm is a must anyway.

I do client/server programming quite a lot. All our apps are 3-tier. Server services are heavily threaded. None of them has a timer on the server, or an event queue. (unless you see the socket listener as an event queue)
I do know that there are other programming paradigms than the "event driven" one suggested by the Delphi creators (supposedly they did have forerunners) but ... (see above).

Thanks for listening.
-Michael

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to