Hallo,
also prinzipiell läßt sich das über mehrere Ansätze lösen.
1. Ansatz - dem Objekt sagen es soll sich später freigeben
--> Das Objeckt soll sich abarbeiten und den selber Freigeben. Aber nur wenn man es dazu auffordert (DoTerminate := TRUE
2. Ansatz - entkoppplung "der Botschaft" vom Objekt-Kontext
a) PostMessage mit WM_MEINE_MESSAGE an z.B. Form
Delphi-Quellcode:
const WM_MEINE_MESSAGE = WM_USER +1;
//...
TForm2.
procedure WMMeineMessage(var Message: TMessage);message WM_MEINE_MESSAGE;
//...
b) Anonymer Thread
Delphi-Quellcode:
procedure ExecuteInAnonymThread(AThreadProc: TProc; ADoSyncronized: Boolean; ADelay: Int64);
begin
TThread.CreateAnonymousThread(
procedure
begin
Sleep(ADelay);
if ADoSyncronized then
begin
TThread.Synchronize(nil,
procedure
begin
AThreadProc;
end);
end else begin
AThreadProc;
end;
end).Start;
end;
Vielleicht bringt dich das ja weiter
Gruß, Chris