Moin!
Sollte nicht eigentlich eben die Sperre dafür sorgen, dass kein anderer Prozess auf die Datei zugreift?
Wie realisiere ich denn dann eine Dateisperre, die über eine gewisse Zeit im Script vorhanden bleibt und ich aus der Datei dabei etwas lesen und in sie etwas schreiben kann?
Du öffnest die Datei irgendwann, setzt sofort ein Lock (je nach Zugriffsmethoden im Skript), und schließt die Datei nur dann, wenn deine Dateioperation wirklich abgeschlossen ist.
Wenn du in dem Skript nur lesen musst, dann setze ein Shared Lock - dann können parallel weitere Skripte ebenfalls lesen.
Wenn du in dem Skript auch schreiben musst, setze ein Exklusives Lock - das kann nicht parallel mit Shared Locks existieren und garantiert, dass wirklich nur dieses eine Skript in die Datei schreibt.
Aber wie erwähnt: Lies diesen Artikel zum Thema Dateisperren.
- Sven Rautenberg