![]() |
Kopieren mit Threads [Test/Optimierung]
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
Ich hab mal ein kleines Testprog gebastelt um Dateien mit Hilfe 2er Threads und einem Ringpuffer zu kopieren. Eingesetzt wurden sowohl TFileStream als auch BlockRead/BlockWrite. Erreichen wollte ich eigentlich eine höhere Transferrate. Leider scheint dieses Vorhaben relativ erfolglos gewesen zu sein. Könnte einer von euch mal einen Blick darauf werfen, vielleicht habe ich auch einen Denkfehler oder das Konzept ist von Grund auf mit den technischen Gegebenheiten nicht vereinbar. Im Anhang die Sourcen des Progs. Danke |
Re: Kopieren mit Threads [Test/Optimierung]
wie sieht denn deine Testumgebung aus?
Ich vermute mal du versuchtest die Dateien auf der selben Partition/Festplatte zu kopieren, wobei sich die gleichzeitigen Schreib-/Leseoperationen gegenseitig ausbremsen. (wenn der Schreib-/Lesekopf der Festplatte ständig zwischen beiden Dateien, bzw. der Schreib- und der Leseoperation, hin und her springen muß) Dann wirkt bei "größeren" Dateien die WindowsFileCache eher hinderlich und die Dateioperationen via TFileStream werden grundsätzlich über diese FileCache umgeleitet. PS: mein D7, was ich hier nur hab, mag deine csUtils.dcu nicht :nerd: |
Re: Kopieren mit Threads [Test/Optimierung]
Hi,
Problem mit csUtils behoben. Zitat:
Lässt sich der FileCache umgehen? |
Re: Kopieren mit Threads [Test/Optimierung]
"Run Thread" endete mit
Zitat:
[add] ja ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz