Einzelnen Beitrag anzeigen

Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#1

Probleme beim Warten auf 2 Threads

  Alt 26. Nov 2006, 14:07
Hallo,

ich probiere schon seit langem rum, wie ich auf 2 Threads warten kann. Ich habe jetzt folgende Ausgangssituation :

Delphi-Quellcode:
  TSearchCopy = class(TThread)
  private
    { Private-Deklarationen }
  public
    procedure Execute; override;
  end;

  TSearchDelete = class(TThread)
  private
    { Private-Deklarationen }
  public
    procedure Execute; override;
  end;
So erstelle ich meine Classen für die Threads.

Delphi-Quellcode:
procedure TMainForm.BtnCopyClick(Sender: TObject);
begin
.
.
.
      // Fenster anzeigen, wo er gerade sucht
      ProgressWindow.Visible := not ProgressWindow.Visible;
      SearchForCopy := TSearchCopy.Create(false);
      SearchForDelete := TSearchDelete.Create(false);
      // hier soll gewartet werden, bis die beiden Threads fertig sind
      // denn hier folgt weitere Sourcecode, der nach dem ausführen der Threads ausgeführt werden soll
.
.
.
end;
Und so starte ich es. In der Execute-Procedure wird nach Dateien gesucht. Dieses wird auch sauber angezeigt und funktioniert auch soweit sehr gut. Ich habe schon versucht, auf die beiden Threads mit :
Delphi-Quellcode:
repeat
  Application.ProcessMessages;
until (SearchForCopy.Terminate) and (SearchForDelete.Terminate);
zu warten, was aber leider nicht zum Erfolg führt. Wie kann ich das anderst machen ? Muss ich eventuell den Aufruf ändern oder das warten auf die Threads ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat