Hallo Leute!
iellecht kann mir jemand bei ein paar Fragen helfen.
Es geht um folgendes "Problem". Ich möchte auf jedenfall verhindern,
dass beim Öffnen bzw. schreiben einer Datei etwas "schief" geht. Jetzt habe ich mir dazu die Funktion flock angesehen, welche ja recht
brauchbar ist. Aus DEJA und der perldoc habe ich erfahren, dass wenn
man nur LOCK_EX bzw LOCK_SH unter umständen ein anderer Prozess der
auch auf die Datei zugreifen will, schreiben oder lesen, "stribt" wenn eine file schon gelockt wurde. (oder habe ich etwas falsch
verstanden?) nun habe ich zusätzlich den Befehl LOCK_NB hinzugefügt,
immer bei LOCK_SH bzw. EX.
Des weiteren habe ich mir überlegt, dass ich jedes mal vor dem
schreiben check ob eine bestimmte Datei vorhanden ist, ist dies der
Fall, so wird in einer while-Schleife solange gewartet, bis die Datei
nicht mehr existiert. Ist die Datei nicht vorhanden, wird diese
angelegt und erst nach dem close, der eigentlichen datei wieder
gelöscht.
Nun ist die Frage ob das überhaupt etwas bringt? oder überflüssig? Des weiteren sitzt die ganze Sache in einer eval-Fkt. die bei einem Fehler wieder in eine Datei schreibt, wieso abgebrochen wurde.
Macht diese Fkt. das Skript um einiges langsamer?
Des weiteren macht es Sinn den print-Buffer, also $| = 1 , zu setzten?
Für was genau gehört das?
Wie ihr seht, Fragen über Fragen.
Hoffe, dass die eine oder andere Frage beantwortet werden kann.
Vielen Dank!
mfg alex