Gab's da nicht mal so etwas ähnliches bei synchronisierten Threads. Schreiben muss exklusiv sein, Lesen hingegen dürfen mehrere ohne Probleme?
[Edit]
Zitat:
fmShareExclusive Andere Anwendungen können die Datei nicht öffnen
fmShareDenyWrite Andere Anwendungen können die Datei ausschließlich zum Lesen öffnen.
Auszug aus der Delphi-Hilfe. D.h. doch, wenn ich zum Schreiben öffnen will und ein anderer Prozess liest gerade, dann müsste doch das Öffnen verweigert werden, oder?
Genauso, wenn ich zum Lesen öffnen will und ein anderer Prozess schreibt gerade. Davon bin ich jedenfalls ausgegangen. Das Problem ist ja, dass die Prozedur, wenn das Öffnen fehlgeschlagen ist, wohl zu schreiben versucht statt das Öffnen neu zu versuchen. Warum weiß ich leider nicht.
@Luckie: Na dann lass ich das {$I-} und {$I+} mal wieder weg. War eh nur ein FastHack, weil mir sonst nix mehr eingefallen ist. Danke für den Hinweis.
Meint ihr, es würde was bringen, wenn ich beim Lesen auch fmShareExclusive benutze? Wenn nein, was ist dann genau der Unterschied zwischen FileStream mit fmShareExclusive und dem TExclusiveFileStream?
[/Edit]