@saniii

Запускает ли cron задачу если она уже выполняется?

Есть скрипт написаный на php, в крон выставлено запуск каждый 30 минут, вопрос, Запустит ли cron скрипт если предыдущий еще не закончил работу?
Расчитать время работы трудно, так как он может отработать 5 минут, так же может работать несколько часов.
И как можно избежать повторного запуска, если они есть(желательно штатными средствами сестемы)?
  • Вопрос задан
  • 1021 просмотр
Пригласить эксперта
Ответы на вопрос 1
Compolomus
@Compolomus
Комполом-быдлокодер
Создавайте перед запуском lock файл, по завершению задачи удаляйте. В начале скрипта делайте проверку на lock файл

Ссылки
https://www.php.net/manual/ru/function.touch.php
https://www.php.net/manual/ru/function.unlink.php
https://www.php.net/manual/ru/function.file-exists.php
Примерный скрипт
const LOCK = 'lock';
if (!file_exists(LOCK)) {
touch(LOCK);
// тут код скрипта который запускается по крон
unlink(LOCK);
}
Ответ написан
Ваш ответ на вопрос

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

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