Also...
Welchen Einfluss FreeOnTerminate:= true; auf Deine FMyThread variable hat... (bei ARC)... Keine Ahnung, nutze das NIE!
Kann man den isFinnished noch abfragen?
Delphi-Quellcode:
if (FMyThread = nil)
then FMyThread:= TMyThread.Create(OnThreadFinished)
else begin
FMyThread := NIL;
FMyThread:= TMyThread.Create(OnThreadFinished);
end;
So geht es... Ohne Berücksichtigung ob der Thread noch läuft...
Der Thread läuft bei mir aber nicht immer 2 Sekunden... Das dauert ggf. länger!
Mavarik