【问题标题】:Quartz Cron Trigger which fires a job for every 40 seconds [duplicate]Quartz Cron Trigger每40秒触发一次工作[重复]
【发布时间】:2016-07-29 19:55:34
【问题描述】:

我遇到了一个奇怪的情况,我只能选择使用 Cron 触发器,并且需要每 40 秒触发一次作业。这可以通过 Cron 触发器实现吗?如果是,请您帮忙。

我的表达方式如下:

0/40 * * * * ?

实际结果:

  • 作业在 12:00:00 执行
  • 作业在 12:00:40 执行
  • 作业在 12:01:00 执行
  • 作业在 12:01:40 执行

预期结果:

  • 作业在 12:00:00 执行
  • 作业在 12:00:40 执行
  • 作业在 12:01:20 执行
  • 作业在 12:02:00 执行

提前谢谢...

【问题讨论】:

  • 您在quartz.log中看到任何解析错误、未命中等异常/错误
  • @sozkul 没有收到任何异常/错误,但看不到作业在期望或预期的时间触发。
  • 有时,石英数据库没有按预期更新,请检查触发器定义。有什么区别吗?
  • 是的,它是完美的。 @sozkul 甚至文档都说触发器的行为是结果。感觉,表情不符合预期。

标签: cron quartz-scheduler cronexpression


【解决方案1】:

在quartz配置xml文件中,设置job定义的<cron-expression>如下;

<cron-expression>0/40 * * * * ?</cron-expression>

另外,请记住,每 40 秒工作一次;

fire on 10:00:40
fire on 10:01:20
fire on 10:02:00
...

【讨论】:

  • 上述表达式未按预期工作。它在每分钟的第 40 秒触发一项工作。即在 10:00:40、10:01:40 和 10:02:40 等..
  • 感谢您的时间和响应。现在我们允许用户根据他/她的要求选择他自己的触发器(简单/cron)。再次感谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-12
  • 2023-01-31
  • 2010-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多