PHP vérifier si le fichier verrouillé avec flock ()?
-
01-10-2019 - |
Question
Est-ce que fopen()
échouera si un fichier existe, mais il est actuellement verrouillé avec LOCK_EX
?
Ou dois-je l'ouvrir, puis essayer de ensemble un verrou, afin de déterminer s'il existe déjà?
J'ai lu aussi que flock()
sera;
pause [le script] jusqu'à ce que vous obtenez le verrou pour durée indéfinie ou jusqu'à ce que votre temps de script sur
Si oui, est-il vrai que cette « pause » peut être contournées avec;
if (!flock($f, LOCK_SH | LOCK_NB)) {
// file locked, do something else
}
La solution
flock()
ne vous empêche en fait de lecture / écriture à un fichier, il ne vous permet de « communiquer » les idées de verrouillage à d'autres scripts. Vous pouvez savoir s'il y a un verrou sur un fichier en utilisant l'extrait de code que vous avez publié.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow