将要 fopen() 如果存在文件,则失败,但目前已锁定 LOCK_EX?

还是我必须打开它,然后尝试和 锁,以确定是否已经存在?

我也读过 flock() 将要;

暂停[脚本]取消直到您获得无限期的锁或直到脚本时间的锁定

http://www.php.net/manual/en/function.flock.php#95257

如果是这样,可以通过这个“停顿”来予以解决;

if (!flock($f, LOCK_SH | LOCK_NB)) {
    // file locked, do something else
}
有帮助吗?

解决方案

flock() 实际上并不能阻止您阅读/写作到文件,它只允许您“传达”锁定到其他脚本的想法。您可以使用发布的摘要来检测文件上是否有锁定。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top