[Lazarus] Are multiple critical sections allowed in form or data module?
Hans-Peter Diettrich
DrDiettrich1 at aol.com
Sun Oct 9 16:50:47 CEST 2011
Michael Van Canneyt schrieb:
>
>
> On Sun, 9 Oct 2011, Hans-Peter Diettrich wrote:
>
>> Mattias Gaertner schrieb:
>>> On Sun, 09 Oct 2011 10:49:31 +0200
>>> Hans-Peter Diettrich <DrDiettrich1 at aol.com> wrote:
>>>
>>>> [...]
>>>> The LCL is not reentrant.
>>>
>>> Most LCL code is reentrant.
>>
>> Only within the context of an single thread.
>>
>> This was acceptable on traditional single-CPU/core machines, but
>> nowadays non-visual components, and also parts of a GUI, should be
>> manageable in different (dedicated) threads.
>
> It's not so on Unix. X-Windows is definitely not thread-safe.
>
> I also have not seen any claims from Microsoft that the GDI controls are
> thread-safe,
True, widgetsets typically are not threadsafe, that's not the problem.
Remember an recent thread, where e.g. a progress bar could be attached
to and served by an thread, independently from the main application GUI.
The same for data modules...
DoDi
More information about the Lazarus
mailing list