Thread Sicheres Löschen
(25 answers)
Opened by bianca at 2013-04-07 09:48 2013-04-07T13:16:36 bianca Du öffnest die Datei (Schritt 1) und versuchst anschließend ein flock (Schritt 2). Somit ist sie bereits geöffnet. Meine Empfehlung: Eine eigene Lock-Datei beim Start des Programms anlegen, sofern sie noch nicht existiert (als _ein_ Systemaufruf). Es ist kein Fehler, wenn die Datei bereits existiert. Anschließend diese Datei (Inhalt egal) in Deiner sub als Lockdatei verwenden, _bevor_ mit sysopen die Datendatei geöffnet wird. Wenn alle Operationen mit der Datendatei beendet sind, kann der Lock auf die Lockdatei wieder freigegeben werden. Die Lockdatei darf natürlich nicht gelöscht werden. Das Löschen der Lockdatei kann beim Programmende durchgeführt werden. Allerdings können so andere Prozesse die Datei natürlich öffnen, die mit Deinem Programm nichts zu tun haben. Unter Windows hast Du dann das Pech, dass diese Datei trotzdem nicht gelöscht werden kann, obwohl _Dein_ Programm die Datendatei nicht im Zugriff hat. |