Проверить, заблокирован ли файл

В PHP, как я могу проверить, был ли файл уже заблокирован с помощью flock ? Например, если другой исполняемый скрипт вызвал следующее:

 $fp = fopen('thefile.txt', 'w'); flock($fp, LOCK_EX); 

Related of "Проверить, заблокирован ли файл"

 if (!flock($fp, LOCK_EX|LOCK_NB, $wouldblock)) { if ($wouldblock) { // another process holds the lock } else { // couldn't lock for another reason, eg no such file } } else { // lock obtained } 

Как описано в документах , используйте LOCK_NB чтобы сделать неблокирующую попытку получения блокировки, а при сбое проверьте аргумент $wouldblock чтобы увидеть, содержит ли что-то еще блокировку.

Проверьте это следующим образом:

 if (!flock($file, LOCK_EX)) { throw new Exception(sprintf('File %s is locked', $file)); } fwrite($file, $write_contents);