Quartz.NET запускает работу несколько раз

Я довольно новичок в Quertz.NET. Я наследую службу Windows, которая использует Quartz.NET для планирования заданий.

Есть задание, которое планирует все другие задания (скажем, ResetJobs: IJobs). Он загружает список заданий из базы данных каждый вечер в 21:00, удаляет все запланированные задания, планирует / запускает задания в списке загруженных заданий. Одним из заданий в загруженном списке является сам ResetJobs.

Когда службы Windows запускаются, служба загружает список заданий (включая ResetJobs) и планирует их. Когда ResetJob срабатывает во время cronjob (0 0 21 1/1 *? *), Он сразу запускается 10 раз. Журнал обслуживания показывает 10 вызовов ResetJob. Сам сервис работает на одной физической машине, а не в кластерной среде. Атрибут [DisallowConcurrentExecution] находится в классе ResetJob, но не помогает. ResetJob по-прежнему работает 10 раз при увольнении.

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

Спасибо

0 ответов

Другие вопросы по тегам