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,但现在不想触发)。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部