@Us59

Как вернуться назад и повторить условие через N секунд?

if (!empty($request)) {
foreach ($request as $value)
{
     $lock = fopen(__DIR__ . '/requests_logs/123.txt', 'c');
     if (!($lock && flock($lock, LOCK_EX | LOCK_NB))) {
      // файл используется
     } else { 
     // файл не используется другими сессиями/приложениями.
     }
}


Подскажите, если файл используется, проверка сработает?
И главный вопрос: Как можно сделать sleep(3) в случае если файл используется и вернуть действие заново, чтобы он попытался открыть файл снова через 3 секунды.. (зациклить пока не откроет в общем хочу)
  • Вопрос задан
  • 113 просмотров
Пригласить эксперта
Ответы на вопрос 1
@green_goo
Также возможно добавить константу LOCK_NB в качестве битовой маски к любой из вышеуказанных операций, если вы не хотите ждать, пока flock() получит блокировку.

https://www.php.net/manual/ru/function.flock.php
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы