我使用如下语句将触发器添加到Quartz.NET
调度程序:
ITrigger t = (ICronTrigger)TriggerBuilder.Create()
.WithIdentity(triggerName, triggerGroup)
.WithCronSchedule(cron)
.Build();
说,cron表达式是每3分钟触发一次:
0 0/3 * 1/1 * ? *
在我的计划中,用户可以Pause
和Resume
使用上述时间表安排的作业。
我看到的是,每次恢复暂停作业时,作业都会在恢复后立即执行 。这开始让我担心。这种行为是正常的还是有办法避免这种情况?
答案 0 :(得分:3)
这是由于失火政策造成的。触发器错过了它的开火时间,被认为是失火,然后根据失火政策采取行动。
您可以在创建触发器时调整触发器失火策略。有关更多信息,请参阅教程。
http://www.quartz-scheduler.net/documentation/quartz-2.x/tutorial/more-about-triggers.html
http://www.quartz-scheduler.net/documentation/quartz-2.x/tutorial/crontriggers.html