Delphi-Quellcode:
Procedure QueueMethod(aThreadMethod:TThreadMethod);
Begin
// Abgeschaut aus UNIT FMX.FORMS
// procedure ReleaseForm(const AForm: TCommonCustomForm);
// Wir müssen das immer so machen wie die das dort auch machen.
// Unter der Annahme dass die FMX Bibliotheken fehlerfrei sind....
{$IFDEF ANDRODID}
TThread.CreateAnonymousThread(
Procedure
Begin
TThread.CurrentThread.Queue(
nil,AthreadMethod);
end;
);
{$ELSE}
TThread.CurrentThread.ForceQueue(
nil,aThreadMethod);
{$ENDIF}
end;
TThread.CurrentThread.ForceQueue(nil,aThreadMethod );
Macht unter Windows im Hauptthread, dass die Methode erst nach dem "abspielen" aller anderen Messages aufgerufen wird...
Dieser Mechanismus reagiert also evtl. unerwünscht auf Application.processmessages...
Denn innerhalb dieses Aufrufs würde die Methode auch ausgeführt...