AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Kopieren mit Threads [Test/Optimierung]
Thema durchsuchen
Ansicht
Themen-Optionen

Kopieren mit Threads [Test/Optimierung]

Ein Thema von C.Schoch · begonnen am 8. Aug 2008 · letzter Beitrag vom 8. Aug 2008
Antwort Antwort
C.Schoch

Registriert seit: 2. Jan 2006
Ort: Wüstenrot
235 Beiträge
 
Turbo Delphi für Win32
 
#1

Kopieren mit Threads [Test/Optimierung]

  Alt 8. Aug 2008, 19:52
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
Angehängte Dateien
Dateityp: rar filecopiertest_751.rar (15,1 KB, 15x aufgerufen)
Tschau Christian
Das System hofft auf Besserung
[Siemens]
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#2

Re: Kopieren mit Threads [Test/Optimierung]

  Alt 8. Aug 2008, 20:13
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
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
C.Schoch

Registriert seit: 2. Jan 2006
Ort: Wüstenrot
235 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Kopieren mit Threads [Test/Optimierung]

  Alt 8. Aug 2008, 21:26
Hi,
Problem mit csUtils behoben.
Zitat von himitsu:
wie sieht denn deine Testumgebung aus?
Es sind 2 verschiedene physikalisch Festplatten an 2 verschiedenen Controlern
Lässt sich der FileCache umgehen?
Tschau Christian
Das System hofft auf Besserung
[Siemens]
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#4

Re: Kopieren mit Threads [Test/Optimierung]

  Alt 8. Aug 2008, 22:55
"Run Thread" endete mit
Zitat:
---------------------------
Anwendungsfehler
---------------------------
Exception EAccessViolation in Modul Project1.exe bei 000021C4.

Zugriffsverletzung bei Adresse 004021C4 in Modul 'Project1.exe'. Schreiben von Adresse 00000029.


---------------------------
OK
---------------------------

[add] ja Hier im Forum suchenNonCached
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz