【发布时间】:2022-01-16 22:30:30
【问题描述】:
在 PHP 中,我使用这样的群创建了一个咨询锁:
$fileHandle = fopen($filePath, 'c');
flock($fileHandle, LOCK_EX | LOCK_NB);
在另一个进程中运行相同的代码随后会失败,因为锁是独占的。但是第二个进程是能够运行的:
$fileHandle = fopen($filePath, 'c');
flock($fileHandle, LOCK_UN); // returns true
但文件仍处于锁定状态,这已通过运行第三个进程确认。那么为什么解锁请求返回true呢?
【问题讨论】: