что означает «задержка» при реализации StatefulJob? - PullRequest
2 голосов
/ 19 мая 2011

Я уже знаю, что при использовании кварца, и мы не хотим одновременных заданий, нам нужно реализовать StatefulJob, и задания не будут выполняться одновременно, но я хочу знать, что это значит, что новые триггеры, которые происходят до завершения выполнения (xx ) метод будет отложен? Означает ли это, что как только задание будет выполнено, тот, который задержан, запускается немедленно или он будет просто пропущен и ожидает следующего запуска? также я хочу вести запись для каждого триггера, который не срабатывает, потому что он уже запущен, так что, кварц, сообщает мне эту информацию каким-то образом?

1 Ответ

4 голосов
/ 19 мая 2011

«Задержка» означает, что Кварц не выберет триггер для стрельбы, даже если наступило время его следующего огня.

После завершения работающего экземпляра задания триггер снова станет кандидатом на стрельбу, а если наступит (или пройдет) следующий пожар, он сработает.

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

Вы можете реализовать TriggerListener, чтобы получать уведомления о пропусках зажигания, но нет события просто для триггера, заблокированного от выполнения.

...