Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#25

AW: Kein wirklicher Geschwindigkeitsvorteil durch Threads?

  Alt 10. Mai 2013, 12:21
Das FreeOnTerminate gehört in die Schleife, sonst gilt es nur für die als letztes erzeugte Thread-Instanz.

Delphi-Quellcode:
    try
      repeat
        Thread1:= TMyThread1.Create(True);
        Thread1.FreeOnTerminate := True //Wenn schon, dann gehört das hier hin.
        Thread1.FDateienname:= Directory+DateienLst.Name;
        Thread1.Resume;
      until FindNext(DateienLst) <> 0;

    finally
      SysUtils.FindClose(DateienLst);
    end;
end;
Du erzeugst jetzt für jede gefundene Datei einen Thread - das ist bei vielen Dateien auch wieder nicht optimal.

Daß du nicht auf das Ende der jeweiligen Threads wartest, wurde ja schon gesagt.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat