Quartz.Net配置触发时间点

Quartz.Net是一款开源的定时任务框架,基于.Net平台实现。

既然是框架,那肯定可以自定义配置项,例如定时任务的触发时间点,Quartz.Net本身提供了相关的配置方式,可以通过如下参数项来配置:

<cron-expression>0 45 22 ? * 1</cron-expression>

这里通过空格来设置,共有7个参数:

1、秒
2、分
3、时
4、每月第几天
5、月
6、每周第几天
7、年(可选项,一般不用)

上述每部分,除了指定的具体数字之外,还可以用如下几个符号:

1、*(星号),代表“every”,每一个
2、?(问号),只用于“每月第几天”、“每周第几天”,代表“no specific value”,非指定值;例如设置了“每月第2天”,那么“每周第几天”就要设置为?,这样避免条件之间冲突
3、/(斜杠),代表“每增”,这样可以指定一个起点,和一个增量,实现按逻辑的多个触发时间;例如“时”设置为“8/2”,代表从8时开始执行,后续每间隔2小时执行一次
4、,(逗号),代表“或者”,这样可以同时指定多个触发时间点
5、#(井号),代表“第几个”,可以可以跳过前面几个触发时间点,从后续的时间点开始;例如:“每周第几天”设置为“FRI#3”,待表在每月的第3个周五才启动

另外,还可以用如下几个字符:

1、L,代表“最后”,例如:如果在“每月第几天”设置为L,那么意思就是在每月的最后一天来执行
2、W,代表“最近的工作日”,例如:15W,就是指在每月最靠近15号的工作日来执行

以上,可以通过官方文档查阅:CronTrigger | Quartz.NET (quartz-scheduler.net)