Tom: Blockingmode von flock()

Beitrag lesen

Hello,

Anmerkung zum PHP-Teil:

if (!flock ($fp, LOCK_EX)) {
  die ('Sperren der Datei fehlgeschlagen!')};

Ich habe das eben nochmals ausprobiert. (Aber Vorsicht, mein Debian ist anders als andere ... :-P)

Die() wird im Leben nicht ausgeführt, wenn die Datei schon mit LOCK_SH oder LOCK_EX oder auch mit einem dio_lock geöffnet ist.

Die übliche max_execution_time von 30 Sekunden ermittelt sich sicherlich wieder aus der verbrauchten Prozessorzeit des Skriptes. Da aber das flock() intern immer wieder auf ein "sleep" läuft, bevor es den nächsten Lockversuch vornimmt und sleep keine (kaum) Prozessorzeit verbraucht, dauert das Timeout ewig. Ich habe es in einer halben STUNDE nicht erreicht, obwohl 30 Sekunden eingestellt sind.

Harzliche Grüße vom Berg
http://bergpost.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)