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

时间:2010-06-30 12:43:15

标签: php filesystems file-locking flock

如果文件存在,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 个答案:

答案 0 :(得分:12)

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