всякий раз, когда драгоценный камень поминутно работа. Если минутная работа занимает больше одной минуты, то что - PullRequest
1 голос
/ 31 октября 2009

Я планирую использовать всякий раз, когда gem , который, помимо прочего, также будет запускать ежеминутно рейк-задачу. Если мое задание по рейку занимает больше минуты, то, основываясь на выводе из каждого гема, похоже, что второй экземпляр задания по рейку будет запущен, даже если первый не совсем завершен.

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

Если нет, то каковы обходные пути. Я полагаю, что этот вопрос лучше обслуживать при сбое сервера, но я задаю его здесь.

Ответы [ 2 ]

1 голос
/ 31 октября 2009

всякий раз, когда просто пишет cronjobs и не пытается остановить их. Это работа выполняемой задачи.

Используйте PID-файлы или блокировки файловой системы, чтобы предотвратить выполнение задачи поверх самой себя.

0 голосов
/ 31 октября 2009

В моем запланированном приложении я сканирую список процессов, ища другие экземпляры моего приложения, работающие с тем же файлом конфигурации в командной строке, а затем завершаем работу с записанной запиской, если процесс уже выполняется с тем же файлом конфигурации.

Это не дает программе наступить на себя ...

PID-файлы или некоторые типы «блокирующих» файлов подвержены проблемам при выходе из процесса, но файл блокировки все еще существует.

...