You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Quartz Scheduler中Cron表达式*/10与0/10的差异解析

Quartz中两个10秒间隔Cron表达式的区别解析

先明确Quartz Cron表达式的秒位规则:秒位的x/y格式表示「从x秒开始,每隔y秒触发一次」;*/y则是「从当前时间之后最近的y的倍数秒开始,每隔y秒触发一次」。

1. 0/10 * * * * ? 的行为

这个表达式的秒位是0/10,意思是从每个分钟的0秒开始,每10秒触发一次。不管你在什么时间启动任务,第一次触发都会等到下一分钟的0秒,之后严格按照0、10、20、30、40、50秒的间隔触发。

比如你在16:32:47启动任务,触发时间会是:16:33:00、16:33:10、16:33:20、16:33:30、16:33:40、16:33:50、16:34:00...完全符合你举的例子。

2. */10 * * * * ? 的行为

这个表达式的秒位是*/10,规则是找到当前时间之后最近的10的倍数秒作为第一次触发时间,之后每10秒触发一次。它不会刻意对齐分钟的0秒,而是基于启动时间的秒数来计算起始点。

还是以16:32:47启动为例:当前秒是47,最近的10的倍数秒是50,所以第一次触发是16:32:50,之后依次是16:33:00、16:33:10、16:33:20...后续的间隔和0/10一致,但第一次触发提前到了当前分钟的50秒,而不是等下一分钟的0秒。

核心区别总结

  • 0/10 * * * * ?:触发秒数固定为0、10、20、30、40、50,严格对齐分钟的起始点。
  • */10 * * * * ?:触发秒数的起始点由任务启动时间决定,第一次触发是启动时间后最近的10倍数秒,后续保持10秒间隔。

内容的提问来源于stack exchange,提问作者Pavel Foltyn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 19:15:04