[fpc-pascal] What is the difference between TThread.Queue(aMethod: TThreadMethod) and Application.QueueAsyncCall(AMethod: TDataEvent; Data: PtrInt);

Mattias Gaertner nc-gaertnma at netcologne.de
Sat Jul 2 01:57:31 CEST 2016


On Fri, 1 Jul 2016 17:47:58 +0200 (CEST)
Michael Van Canneyt <michael at freepascal.org> wrote:

>[...]
> Application.QueueAsyncCall has nothing to do with threads. 
> This is an LCL method which can be used to insert a callback in the message loop.
> I think it unlikely that this is thread-safe, I suspect it is only for the
> main thread.

It is thread-safe and the callback is called by the main thread.

 
> TThread.Queue schedules a call for execution in the main thread. 
> It is meant for use in other threads.



Mattias



More information about the fpc-pascal mailing list