Du weißt aber, daß du jetzt mindestens 3 Cache in deinem Stream drinnen hast?
- dein Puffer
- die WindowsFileCache
- die Cache z.B. der Festplatte
- .........
es ginge also noch etwas Flotter
- entweder man nutzt die WFC besser aus und optimiert deren Verwaltung
- oder man umgeht die WFC und nutzt auf der tieferen Ebene nur noch die eigene Cache.
für ersteren Weg (Optimieren der WFC ... siehe
CreateFile) hab ich mich in himXML entschieden, da man die Lese-/Schreibzugriffe für den anderen Weg (umgehen der WFC) etwas mehr koordiniert werden muß (dieses findet man aber im FileSplitter wieder, da dort der Datentransfer sehr gut vorhersehbar ist)
Zitat von
Laufi:
ich empfehle das allen, die für schnelle Streams aus dateien nicht selber einen Buffer holen möchten
PS: die alten Pascalfunktionen um
AssginFile
nutzen einen Puffer, nur ist der leider standardmäßig sehr suboptimal eingestellt (128 Byte), so daß er in diesem Fall eher bremst ... es sei den man gibt da einen eigenen "passerenden" Puffer an
PSS: wenn du den Stream entweder nur zum Lesen oder Schreiben öffnen läßt, dann ließe sich die Pufferverwaltung wesenlich vereinfachen und es wären auch keine/weniger SEEKs nötig