flock: File locking; hoe zit het met include?
Ik heb sinds gisteren de functie flock(); ontdekt. Ik zie hoe handig en hoe nuttig de functie is: het zorgt ervoor dat een file niet geopend word, als deze ook ergens anders gebruikt word. Het script gaat pas door als de file ge-unlocked is.
Maar nu heb ik een vraagje. Ik zie nu hoe dat gaat met files, die d.m.v. fopen(); geopend worden. Maar hoe gaat dat als je include?
Is het mogelijk dat het bestand dat je include op hetzelfde moment gebruikt wordt door een ander? Kan het zijn dat terwijl jij nog aan het schrijven bent naar een file, er een include plaatsvind (en dat deze dan ook doorgezet wordt)?
Word de file gelocked als er een include plaatsvind?
Uiteraard gaat deze vraag ook op voor de require-statement.
Maar nu heb ik een vraagje. Ik zie nu hoe dat gaat met files, die d.m.v. fopen(); geopend worden. Maar hoe gaat dat als je include?
Is het mogelijk dat het bestand dat je include op hetzelfde moment gebruikt wordt door een ander? Kan het zijn dat terwijl jij nog aan het schrijven bent naar een file, er een include plaatsvind (en dat deze dan ook doorgezet wordt)?
Word de file gelocked als er een include plaatsvind?
Uiteraard gaat deze vraag ook op voor de require-statement.
Waarom flock() gebruiken in een multi-user webomgeving? Is vragen om problemen. 110 gebruikers die op dat ene lock wachten?
Ik zou het afraden om iemand een bestand te ontzeggen als het al in gebruik is. Wat je wel kan doen is een melding geven dat het al in gebruik is.