Quartz.net повторный задание с интервалом после завершения работы

StackOverflow https://stackoverflow.com/questions/1449515

Вопрос

В настоящее время я внедряю Quartz.net в простом приложении, которое должно выполнять кусок кода каждый (например) 5 секунд. Только теперь код иногда занимает более 5 секунд.

Сначала у меня возникла проблема с тем, что код был выполнен, когда тот же код все еще работал, я исправил это, используя интерфейс IstatefulJob вместо интерфейса IJOB.

Но я действительно хотел бы достичь, так это то, что моя работа выполняется через 5 секунд после завершения работы, а не через 5 секунд после начала моей предыдущей работы.

Я, конечно, мог справиться с событием, которое запускается, когда мой слушатель «слышит», что работа готова и переоценка работы, но мне было интересно, нет ли каких-либо стандартных функциональности для этого.

Это было полезно?

Решение

В настоящее время нет стандартного способа достичь этого, так как Quartz.net играет в идее, чтобы иметь предопределенное (рассчитанное предварительное) время пожара и опрос для правильного времени, чтобы вызвать работу.

То, как вы описали, будет самым простым путем. Либо запланируйте с работы следующего исполнения, либо от слушателя.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top