выполнение этого кода дважды:
$fp = @fopen('test.test', "wb");
if (flock($fp, LOCK_NB | LOCK_EX)){
@fwrite($fp, $data);
echo 'written';
sleep(5);
}else{
echo 'skipped , ok';
}
@flock($fp, LOCK_UN);
@fclose($fp);
всегда дает мне результат «написано»
Означает, что LOCK_NB
пропускается, любые подсказки (как в winbdows, так и в unix)
РЕДАКТИРОВАТЬ (29 марта 2012 г. все еще не исправлено): https://bugs.php.net/bug.php?id=54453&edit=3 Ошибка PHP № 54453