98.12. 配置错误指令
可以使用错误指令配置 quartz 调度程序,以处理触发器的错误情况。您使用的 concrete 触发器类型将定义一组额外的 MISFIRE_INSTRUCTION_XXX 常数,这些常量可以设置为此属性的值。
例如,将简单触发器配置为使用错误指令 4:
quartz://myGroup/myTimerName?trigger.repeatInterval=2000&trigger.misfireInstruction=4
quartz://myGroup/myTimerName?trigger.repeatInterval=2000&trigger.misfireInstruction=4
同样,您也可以使用其错误指令之一配置 cron 触发器:
quartz://myGroup/myTimerName?cron=0/2+*+*+*+*+?&trigger.misfireInstruction=2
quartz://myGroup/myTimerName?cron=0/2+*+*+*+*+?&trigger.misfireInstruction=2
simple 和 cron 触发器有以下错误指令代表:
指示调度程序在错误错误的情况下,现在希望由调度程序触发 SimpleTrigger。
这个指令通常只用于 'one-shot'(非重复)触发器。如果在带有重复计数 > 0 的触发器上使用它,则等同于说明 MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT。
指示调度程序在误报时,simpleTrigger 希望重新调度到"现在" (即使相关的 Calendar 排除了"now"),且按原样重复计数。这会模糊处理 Trigger 端到端,因此如果 'now' 在终止时间后,则 Trigger 不会再次触发。
使用这个指令会导致触发器"forget"开始时间和重复次数,即最初设置它时的重复计数(这只在某些原因希望能够告知以后的原始值时出现问题)。
指示调度程序在误报时,simpleTrigger 希望重新调度到"现在" (即使相关的 Calendar 排除了"现在"),且重复计数设置为该情况(如果尚未错过任何触发)。这会模糊处理 Trigger 端到端,因此如果 'now' 在终止时间后,则 Trigger 不会再次触发。
使用这个指令,可让触发器"forget"开始时间和重复计数(最初通过.相反,触发器重复计数将更改为剩余的重复计数(这只在某些原因希望能够告知以后的原始值时出现问题)。
这个指令可能会导致 Trigger 在触发 'now' 后进入 'COMPLETE' 状态,如果所有重复的时间都丢失了。
指示调度程序在误报时,simpleTrigger 希望在"现在"后重新调度到下一次调度时间 - 考虑任何关联的 Calendar,并且重复数设置为该情况(如果未错过任何触发)。
如果所有丢失的触发时间,则此指令可能会导致 Trigger 直接进入 'COMPLETE' 状态。
指示调度程序在误报时,simpleTrigger 希望在"现在"后重新调度到下一次调度时间 - 考虑任何关联的 Calendar,重复计数保持不变。
如果触发器的结束时间已到达,则这个指令可能会导致 Trigger 直接进入 'COMPLETE' 状态。
指示调度程序在错误错误的情况下,现在希望由调度程序触发 CronTrigger。
98.12.7. CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING = 2 复制链接链接已复制到粘贴板!
指示调度程序在误报时更新,C CronTrigger 希望在当前时间(考虑任何关联的 Calendar )之后,C CronTrigger 希望将其更新为下一次调度中。