cron每小时执行一次,Cron表达式每45分钟执行一次

I want a cron expression which fires every 45 minutes.

According to the documentation, I have created this 0 0/45 * * * ? expression.

But it is fired in a pattern like 12:00, 12:45, 13:00, 13:45, 14:00.

But what I expect and want is to be fired at 12:00, 12:45, 13:30, 14:15.

What am I missing?

解决方案

Cron is not meant to solve such problems. It defines the exact date and times, when a trigger must be fired, not intervals. Use a simple schedule instead:

TriggerBuilder.Create()

.StartAt(startDate)

.WithSimpleSchedule(

simpleScheduleBuilder => simpleScheduleBuilder.WithIntervalInMinutes(45))

.Build();

Edit:

It's either a simple schedule as above, or multiple cron triggers (Quartz jobs can have multiple triggers):

0 0/45 12/3 * * ? # 12:00, 12:45, 15:00, 15:45, ...

0 30 13/3 * * ? # 13:30, 16:30, ...

0 15 14/3 * * ? # 14:15, 17:15, ...

  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 1024 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值