* * 0/2 * * ?
时间: 2025-01-03 11:32:13 浏览: 6
### 解析 Cron 表达式 `* * 0/2 * * ?`
给定的 Cron 表达式`* * 0/2 * * ?`用于定义定时任务的时间触发规则。此表达式的组成部分及其意义如下:
- 秒:`*`表示每一秒都会执行一次操作[^1]。
- 分钟:`*`意味着每分钟内的任一秒都符合条件,即该位置未对具体时间做额外限定。
- 小时:`0/2`指示从第0个小时开始每隔两小时重复一次动作;这里的斜杠(/)用来指定增量间隔[^3]。
- 日:`*`表明每天均满足条件,不会跳过任何一天。
- 月:`*`同样适用于每个月份,意指全年范围内有效。
- 星期:`?`字符在此处被采用,它专门用作通配符,在某些框架下(如Spring),当不需要考虑每周周期而仅关注每月或每日规律时使用这个符号代替具体的星期数值[^2]。
因此,上述Cron表达式代表的是一个每秒钟都在运行的任务,并且这一模式会在偶数小时内持续生效——也就是凌晨两点整至四点前、四点整至六点前等等这样的时间段内不断循环直至结束。不过值得注意的一点是,由于秒级精度的存在使得实际应用中几乎可以认为是在全天候不间断运作的状态。
```java
@Scheduled(cron = "* * 0/2 * * ?")
public void scheduledTask() {
System.out.println("This task runs every second during even hours.");
}
```
阅读全文