DoTest ist quasi die Methode, welche OnTest auslöst, womit dieses Synchronize schon stimmt. (die Namensgebung ist in der
VCL Vielerorts genauso)
FTest.OnTest := [B]MyTest[/B];
Das klingt für mich eigentlich danach, dass OnTest die harte Threadarbeit macht ...
Kann mich aber irren
Jedenfalls sieht das hier nicht so aus, als würde der Thread überhaupt irgendwie zum Tragen kommen.
Der Button hängt doch, bis der Thread terminiert ist.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
FTest := TTestThread.Create(false);
FTest.FreeOnTerminate := false;
FTest.OnTest := MyTest;
FTest.Resume;
repeat
CheckSynchronize(10);
until FTest.Terminated;
Caption := FTest.TestProperty;
FTest.Free;
end;