Задать вопрос
65536
@65536

Как объяснить такое поведение?

Прикручивал сейчас старую проверенную блокировку запуска уже работающего скрипта и она не заработала, методом тыка нашел причину, но теперь интересно почему так

вот работающий вариант
<?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);
}
  • Вопрос задан
  • 159 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы