小时的Cron表达式:分钟到小时:分钟

时间:2016-06-06 11:26:47

标签: cron quartz-scheduler quartz.net

我在Quartz.NET中使用Cron Expressions,并且在开始Hour:Minute和结束Hour:Minute

时生成cron表达式时出现问题

如果我有一份工作,我希望每隔5分钟从10:20 AM11:25 AM运行一次正确的cron表达式,

目前我有这个:0 20-25/5 10-11 1/1 * ? *

但这仅在10:20, 10:25, 11:20 and 11:25

运行
1   Monday, June 6, 2016 11:20 AM
2   Monday, June 6, 2016 11:25 AM
3   Tuesday, June 7, 2016 10:20 AM
4   Tuesday, June 7, 2016 10:25 AM
5   Tuesday, June 7, 2016 11:20 AM
6   Tuesday, June 7, 2016 11:25 AM
7   Wednesday, June 8, 2016 10:20 AM
8   Wednesday, June 8, 2016 10:25 AM
9   Wednesday, June 8, 2016 11:20 AM
10  Wednesday, June 8, 2016 11:25 AM

但它应该做的是每隔五分钟从10:20 AM till 11:25 AM开始

10:20, 10:25, 10:30, 10:35, 10:40 ....... 11:20, 11:25

1 个答案:

答案 0 :(得分:1)

Quartz完全按照你的Cron表达式所说的那样,即在10和11小时之间包含20到25分钟之间的每5分钟。而且只有一个Cron表达式无法实现这一点...

这通常使用具有每日时间间隔时间表( <TextView android:id="@+id/txt_pending_count" android:layout_width="22dp" android:layout_height="22dp" android:layout_alignParentRight="true" android:background="@drawable/ring" android:gravity="center" android:text="0" android:textColor="#FFF" android:textSize="10sp" android:textStyle="bold"/> )的触发器来完成,每天开始时间为10:20,每日结束时间为11:25,间隔为5分钟。

如果您的触发器仅在第0或第5分钟被触发,还会向触发器添加失火指令策略以避免在恢复时发生时移(请参阅https://dzone.com/articles/quartz-scheduler-misfire