Einzelnen Beitrag anzeigen

Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#5

Re: AThread.WaitFor gibt Fehler "Das Thread Handle ist

  Alt 23. Okt 2009, 12:55
So müsste es funktionieren:
Delphi-Quellcode:
//Erzeugt den Thread
procedure TForm1.Button1Click(Sender: TObject);
begin
  AThread := TMyThread.Create(True);
  AThread.Priority := tpNormal;
  //AThread.FreeOnTerminate := True; //Nicht automatisch freigeben
  //AThread.OnTerminate := MyThreadTerminate; //Braucht man nicht außer du willst noch was anderes darin machen
  AThread.Resume;
end;

//Gibt dem Benutzer die Möglichkeit, den Thread zu Beenden
procedure TForm1.Button2Click(Sender: TObject);
begin
  if Assigned(AThread) then
  begin
    AThread.Terminate;
    AThread.WaitFor;
    FreeAndNil(AThread);
  end;

  //Hier steht noch Code, der erst ausgeführt werden darf, wenn AThread beendet ist.
end;
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat