PHP 检查文件是否被 flock() 锁定?

2022-08-30 23:40:06

如果文件存在,但当前已使用 ? 锁定,将失败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
}

答案 1

flock()实际上并不阻止您读取/写入文件,它只允许您“传达”锁定到其他脚本的想法。您可以使用您发布的代码段检测文件是否存在锁定。


答案 2

推荐