Прикручивал сейчас старую проверенную блокировку запуска уже работающего скрипта и она не заработала, методом тыка нашел причину, но теперь интересно почему так
вот работающий вариант
<?php
$lockFile = fopen('running.lock', 'w');
function isRunning($lockFile)
{
return !flock($lockFile, LOCK_EX | LOCK_NB);
}
if (isRunning($lockFile)) {
die('running' . PHP_EOL);
} else {
// ...
sleep(5);
}
а вот неработающий
<?php
function isRunning()
{
$lockFile = fopen('running.lock', 'w');
return !flock($lockFile, LOCK_EX | LOCK_NB);
}
if (isRunning()) {
die('running' . PHP_EOL);
} else {
// ...
sleep(5);
}