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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值