2016-04-28 47 views

回答

1

通常,暫停觸發器不會影響其下一次着火時間。

I.e.如果你有一個每天在6點運行的CronTrigger,並且在那天觸發之前暫停觸發器,它不會觸發。

但由於下一次着火時間沒有改變,該觸發器應立即觸發或執行其MisfireInstruction後再次暫停。觸發器是否被觸發或其MisfireInstruction是否被執行取決於MisfireThreshold。

對於CronTrigger的情況,您可以在取消暫停CronTrigger之前調整nextFireTime。 (請參閱CronTrigger.setNextFireTime()

+0

如何將nextfiretime設置爲第二天的觸發開始時間? – Prakhar

+0

我建議做以下事情:每次在您取消暫停Trigger之前,您都會執行'cronTrigger.setNextFireTime(cronTrigger.getFireTimeAfter (new Date()))''。這只是將CronTrigger的下一個觸發時間設置爲與現在相關的CronExpression匹配的下一個有效時間。 – mam10eks

+0

非常感謝。我會試試這個並回復你。 – Prakhar