113.12. 配置不当指令
quartz 调度程序可以使用 misfire 指令配置,以处理触发的不当情况。您使用的 concrete 触发器类型将定义了一组额外的 MISFIRE_INSTRUCTION_XXX 常数,它们可能会设置为此属性的值。
例如,要将 simple 触发器配置为使用 misfire 指令 4:
quartz://myGroup/myTimerName?trigger.repeatInterval=2000&trigger.misfireInstruction=4
同样,您也可以使用其中一个 misfire 指令配置 cron 触发器:
quartz://myGroup/myTimerName?cron=0/2+*+*+*+*+?&trigger.misfireInstruction=2
simple 和 cron 触发器有以下不错指令代表:
指示处于不当状态的调度程序,通过调度程序现在触发 SimpleTrigger。
这个指令通常只用于 'one-shot'(非重复)触发器。如果在带有重复计数 > 0 的触发器中使用它,则等同于指令 MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT。
指示处于不当状态的调度程序,SimpleTrigger 想要重新计划为"now'(即使相关的 Calendar excludes"now'),重复计数为原样。但是,这会导致 Trigger 结束时间,因此如果 'now' 在结束时,则 Trigger 不会再次触发。
使用这一指令会导致触发器"forget"启动时间,并重复了它最初使用 进行的设置(如果出于某种原因,出于某种原因才希望能够了解原始值在一段时间时存在什么)。
指示处于不当状态的调度程序,如果未错过任何触发,则 SimpleTrigger 想要重新调度为"now" (即使关联的 Calendar 排除"now'),如果它没有错过任何触发。但是,这会导致 Trigger 结束时间,因此如果 'now' 在结束时,则 Trigger 不会再次触发。
使用这一指令可让触发器"forget"启动时间,并重复其最初设置过的计数。相反,触发器上的重复计数将更改为剩余的重复计数是什么(只有在出于某种原因您想了解某个时间原始值时才出现问题)。
如果所有重复时间都丢失,则这个指令可能会导致 Trigger 在触发 'now' 后进入 'COMPLETE' 状态。
指示调度程序发生不当的情况,如果未错过任何触发,则 SimpleTrigger 想要重新调度到下一个调度时间。
如果所有触发时间都丢失,则此指令可能会导致 Trigger 直接进入 'COMPLETE' 状态。
指示处于不当状态的调度程序,SimpleTrigger 希望在"now' 后重新调度到下一个调度时间,考虑任何关联的 Calendar,重复计数保持不变。
如果触发器的结束时间已到达,则此指令可能会导致 Trigger 直接进入 'COMPLETE' 状态。
指示发生发生错误情形时的调度程序,S CronTrigger 想要由调度程序现在触发。
113.12.7. CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING = 2 复制链接链接已复制到粘贴板!
指示发生发生不当情况的调度程序,S CronTrigger 希望使其在下次时间在当前时间之后更新为下一次时间(考虑任何关联的 Calendar,但现在不想触发)。