Quartz表达式,每N秒重复执行问题,Quartz的Bug?

本文探讨了Cron表达式中*/59和0/50等定义导致的任务执行频率问题,实际执行情况与预期不符,在00秒也触发执行。文章记录了具体的执行日志并提出了疑问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网上也有一些问到该问题,但是都没有解决答案,表达式如下:

*/59 * * * * ?

按理,在秒钟上定义*/59,上面的表达式将使得Job每59秒运行一次,

但实际上,在00秒也执行了一次,通过断点调试和打印日志可以很明显的看到效果,

Job执行日志如下:

executing... at 2010-07-23 18:57:00.0

executing... at 2010-07-23 18:57:59.0

executing... at 2010-07-23 18:58:00.0

executing... at 2010-07-23 18:58:59.0

executing... at 2010-07-23 18:59:00.0

executing... at 2010-07-23 18:59:59.0

同理,0/50 * * * * ? 除了在每分钟的第50秒钟运行一次之外,在00秒也运行一次。

0/25 * * * * ? (等同于*/25 * * * * ? ),会在每分钟的25、50、00秒共运行3次。

 

不知道什么原因,这样的表达式该怎么写?

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值