Einzelnen Beitrag anzeigen

Patrick

Registriert seit: 15. Sep 2003
184 Beiträge
 
Delphi 2010 Professional
 
#1

FestplattenCache löschen

  Alt 20. Jun 2006, 10:23
Hallo,

Ich schreibe momentan an einem Festplatten Benchmarktool. Am Ende möchte ich Lese- und Schreibgeschwindigkeit anzeigen.
Damit schreibe ich eine Datei
Delphi-Quellcode:
    F := TFileStream.Create(Datei+InttoStr(i), fmCreate or fmShareExclusive);
    try
      while wrBytes + BytesPerBlock <= Size do
      begin
        F.Write(buf, BytesPerBlock);
        Inc(wrBytes, BytesPerBlock);
      end;
      if wrBytes + BytesPerBlock < Size then
        F.Write(buf, Size - wrBytes);
    finally
      F.Free;
    end;
Auslesen ist bis auf das write (dann Read) der selbe Algorithmus.
Jetzt habe ich das Problem, dass er bei kleinen Dateien bis zu 8 mal schneller liest als er schreibt, was ich für sehr unwahrscheinlich halte. Das heißt er hat die Datei noch irgendwo gecached. Ich nehme mal das es der Festplattencache ist, oder aber auch der Arbeitsspeicher?

Wie lösche ich den cache, damit kein Mist rauskommt?
Genieße jede Minute deines Lebens, denn sie wird nicht wieder kommen.
  Mit Zitat antworten Zitat