TS: php Fremdzugriffe

Beitrag lesen

Hello lieber Rolf,

Nein. Das Locken von Dateien ist unabhängig davon, was ein Prozess beabsichtigt, egal also ob der schreiben oder lesen will. Ist ein Lock gesetzt, gibt das OS die Datei erst wieder frei wenn der entsprechende Prozess beendet wurde oder dieser selbst den Lock aufhebt. Gleichermaßen kümmert sich das OS darum, daß weitere Prozesse solange angehalten werden bis ein Lock aufgehoben wird.

so einfach ist die Betrachtung nicht. Wir reden bei PHP und flock() über ein advisory Locking. Je nach OS/Filesystem darunter wird das auch nur als Advisory ausgeführt, muss also nicht beachtet werden. Bei Windows wird es vermutlich noch mandatory sein, ist also nicht zu umgehen.

Auf Linux gibt es auch Mandatory Locking. Dafür muss das betroffene Volume aber entsprechend gemounted sein (mand). Außerdem benutzt PHP für gezieltes Mandatory Locling andere Funktionen, die soweit ich weiß, auch bei PHP 7 noch nicht mit dem "normalen" flock() abgestimmt sind - was aber ginge!

Liebe Grüße
Tom S.

--
Es gibt nichts Gutes, außer man tut es!
Das Leben selbst ist der Sinn.