Einzelnen Beitrag anzeigen

Jens01

Registriert seit: 14. Apr 2009
673 Beiträge
 
#7

AW: Thread - warten bis alle Berechnungen fertig

  Alt 29. Aug 2011, 18:10
Wow, ich war nur mal kurz draußen...

Ich glaube ich habe die Lösung....

So ich habe das versucht :
Delphi-Quellcode:
procedure TDLT.OnThreadTerminate(Sender: TObject);
begin
  if Thread1.Finished and Thread2.Finished then
    Show;
end;
Thread1 und Thread2 feuern hier drauf. Aber der jeweilige fertige Thread stellt wohl Finished und Terminated erst nach dem Event auf True. So war das eigene Finished immer noch auf False.

Ich habe jetzt die Eventprocedure aufgeteilt. Jetzt fragt der jeweils fertig werdene Thread den anderen, ob er schon fertig ist :
Delphi-Quellcode:
procedure TtDLT.OnThread1Terminate(Sender: TObject);
begin
  if Thread2.Finished then
    Show;
end;

procedure TDLT.OnThread2Terminate(Sender: TObject);
begin
  if Thread1.Finished then
    Show;
end;
  Mit Zitat antworten Zitat