Thread Datei sperren: flock()
(31 answers)
Opened by bieber at 2007-07-10 15:25
[quote=opi,11.July.2007, 16:07][quote=sid burn,11.07.2007, 16:03]Und trotzdem gibt es noch ein Problem denn das CGI Skript läuft ja keine 10Min etc. für solange wie der Benutzer die Datei "bearbeitet". ;)
Sondern vielleicht nur 1 sek. oder deutlich weniger, und dann erscheint es nicht mehr im /proc.[/quote] Ja dann wartet man einfach die 1 Sekunde bis der Lock aufgehoben ist ;) Das Schreiben und Lesen in ein eigenes Logfile dauert mindestens genauso lang, wenn nicht noch länger.[/quote] Ich glaub du verstehst das problem nicht. Ein CGI Skript führt eine Funktion "bearbeiten" durch. Liefert den benutzer eine Datei die er jetzt bearbeiten kann. Diese Datei soll jetzt für 10 Min gesperrt sein, so dass nur der User der auf "Bearbeiten" gegangen ist, diese Datei verändern kann. Allerdiengs bleibt das Skript ja keine 10 Minuten aktiv. Sondern läuft vielleicht nur 1 Sekunde. Du musst also eine Persitente Möglichkeit schaffen eine File zu Locken über die Laufzeit des Programmes heraus. Da hilft dir weder flock() noch /proc/* weiter. Da eine Datei ja trotzdem weiterhin gesperrt sein kann. Obwohl der Prozess schon gar nicht mehr läuft. Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
|