Der Martin: Einfacher PHP Counter

Beitrag lesen

Hi,

Das erklär mir mal [...] Die Sicherstellung der Integrität des Dateisystems an sich liegt dabei natürlich in der Verantwortung des Betriebssystems, jeder der fünf Schritte muss für sich betrachtet atomar sein.
Das liegt zum ersten mal am Format, in dem geschrieben wird.
Hier wird mit dem PHP-Standard gearbeitet. Der schreibt human readable numbers, also Klartext.

das spielt aber keine Rolle.

...
B schreibt die 10
A schreibt die 2, die Null von B's 10 wird nicht überschrieben. So wird aus der 10 eine 20.

Geht nicht, da die write-Aufrufe, wie im vorigen Posting schon als Notwendigkeit formuliert, atomar sind. A schreibt seine 2 also schlimmstenfalls hinter das Trennzeichen (Zeilenumbruch) nach der 10, die B geschrieben hat. Das richtet keinen Schaden an.

Wenn man mehr als einen Wert in der Datei hält, wird es noch chaotischer.

Wenn man mehr als einen Wert in einer Datei hält, kann es überhaupt erst zu Konflikten kommen.

Warum Du dich nun so dagegebn wärst, es den OP richtig machen zu lassen, verstehe ich allerdings nicht.

"wärst"? Du meinst "wehrst"?
Ich wehre mich nicht dagegen, ich find's ja okay. Ich halte nur den dafür nötigen Aufwand, gemessen am Nutzen der Gesamtoperation, für übertrieben - genauso wie ich nie auf die Idee käme, eine Steckdose auf dem Balkon zu installieren, nur damit ich im Sommer einmal mit Notebook und allem Zubehör draußen sitzen kann.

Ein simples

flock($fh, LOCK_EX);

vor dem Auslesen zum anschließenden Schreiben reicht doch dafür völlig. Das ist doch kein Aufwand.

Nur dass man flock() in einer Schleife so lange wiederholen muss, bis es true liefert (was wohl oft schon beim ersten Aufruf der Fall sein dürfte).

So long,
 Martin

--
Zwei Stammtischbrüder:
Hier steht, dass laut Statistik über 60 Prozent aller Ehefrauen fremdgehen.
Was soll ich mit dieser Information? Ich brauche Namen, Fotos, Telefonnummern ... !
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(