Einzelnen Beitrag anzeigen

Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Geschwindigkeitsunterschied TFilestream TMemorystream

  Alt 12. Nov 2005, 13:12
Wenn Du folgenden Code vor der For-Schleife einfügst, dauert auch nur 3 Sekunden, weil der Speicher in einem Mal am Stück reserviert wird (evtl. musst Du noch etwas für die Dateinamen hinzufügen, weil ich nicht weiss, was Du in StringStrSpeichn tust):
Delphi-Quellcode:
    aDateiGr := 0;
    for i:=0 to aObjList.Count-1 do
    begin
      aFs:=TFileStream.Create(aObjList.Strings[i], fmOpenRead);
      try
        aDateiGr:= aDateiGr+aFs.Size+length(aObjList.Strings[i])+1;
      finally
        aFs.Free;
      end;
    end;
    // Speicher wird nur einmal reserviert
    aTempFs.SetSize(aDateiGr);
    // Hier geht's mit Deinem Code weiter
    for i:=0 to aObjList.Count-1 do
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat