Название: Cron и вложенный запуск заданий Отправлено: alex12 от Июня 22, 2009, 15:42 У меня система, в которой довольно часто запускается моя программа (скрипт из нескольких консольных программ)
при помощи cron. Скрипт иногда может отрабатывать довольно продолжительное время. Вполне возможна ситуация, когда следующий запуск cron делает раньше, чем программа завершит свое выполнение. Возникает вложенный запуск. Есть ли элегантный способ защиты от такой ситуации? Может есть стандартное решение? Название: Re: Cron и вложенный запуск заданий Отправлено: MoPDoBoPoT от Июня 22, 2009, 15:56 Вот вам в помощь:
http://www.qtsoftware.com/products/appdev/add-on-products/catalog/3/Utilities/qtsingleapplication Название: Re: Cron и вложенный запуск заданий Отправлено: alex12 от Июня 22, 2009, 21:04 Спасибо, к сожалению не пойдет. Я неудачно поставил задачу: у меня не просто программа, а небольшой скрипт из нескольких консольных команд.
Название: Re: Cron и вложенный запуск заданий Отправлено: denka от Июня 22, 2009, 21:32 Почему бы в самом скрипте не анализировать выполняется ли на данный момент твой скрип запущенный прошлый раз?
Название: Re: Cron и вложенный запуск заданий Отправлено: lit-uriy от Июня 22, 2009, 22:09 den'ka, согласен.
Мало того можно посмотреть в качестве примера скрипты загрузки системы. Там запуск идёт поочерёдно, пока один демон не запустится зависимые от него ждут. Помоему это делается через экспорт переменных. Т.е. В данном случае можно проверять существует ли некая переменная, если да, то не выполнять работу. Если не существет, то экспортировать переменную и выполнить работу. Примерно так. Название: Re: Cron и вложенный запуск заданий Отправлено: Kagami от Июня 22, 2009, 23:30 Можно делать lock-файл.
Код
Название: Re: Cron и вложенный запуск заданий Отправлено: Alex Custov от Июня 23, 2009, 00:19 man lockfile, или ручной lock, как выше показали. и неплохо бы trap отрабатывать.
Название: Re: Cron и вложенный запуск заданий Отправлено: alex12 от Июня 23, 2009, 08:15 Спасибо за советы. Буду разбираться.
|