[Lazarus] Threads and Libraries (dll and so)
Michael Schnell
mschnell at lumino.de
Tue Feb 4 14:04:27 CET 2014
On 02/04/2014 01:39 PM, Sven Barth wrote:
> Upon creation of the QApplication class it remembers the thread ID and
> every GUI widget is checked that it is owned by this thread ID as
> well. Certain events like rendering are also checked for the thread ID.
>
While I don't exactly see the point (as each thread of the application
will have it's own thread id and thus should be handled as "unrelated"),
I am sure that you do know what you say, denying the possibility in
question.
Anyway this is really bad news regarding the performance of KDE, QT etc
(and consequence the LCL) on multiprocessor systems:
Doing multiple automatically updated widgets will perform a lot faster
when done in multiple applications than in a single one. (We did check
this with Delphi/Windows: same here.)
(Maybe in Windows this might be better: I once tried fooling the system
by doing a DLL per thread and run each of them as a thread with it's own
VCL instance. It did work but crashed after some time and I did not have
the guts to go on hacking and track down that problem.)
-Michael
More information about the Lazarus
mailing list