EAS 后台事务定时执行设置



后台近期做了一个数据同步的功能,要求30分钟执行一次,EAS后台事务中以前常用的是每天定点执行任务,本次需求可以通过自定义中的Cron表达式来实现,这里总结一下设置心得:


1)表达式案例(图2):

 a.   0 0/30 * * * ?

描述:指的是“从今天起(忽略周),从0分开始,每30分钟执行一次”,"?"代表忽略的意思,案例中是忽略周。


b.  0 0 2/4 * * ?

描述:从今天起,从2点开始,每4个小时执行一次;


2)Cron表达式由七个部分组成,每个部分之间用空格分开,一下为相关规则:

名称 是否必须 允许值 特殊字符
0-59 , - * /
0-59 , - * /
0-23 , - * /
(1-31) , - * ? / L W C
1-12 或JAN-DEC , - * /
1-7或SUN-SAT , - * ? / L W #
空或1970-2099 , - * /

3)特殊字符描述:

“-”: 表示一个指定的范围,例如在Minutes域使用5-20,表示从5分到20分钟每分钟触发一次 
“,”: 表示列出枚举值。例如:在Minutes域使用5,20,则意味着在5和20分每分钟触发一次;
“*”:字符代表所有可能的值
“/”:表示起始时间开始触发,然后每隔固定时间触发一次,例如在Minutes域使用“2/15”表示2分钟时执行一次,并之后每隔15分钟执行一次;“2”表示为从“2”分开始;
“?”:表示每月的某一天,或第周的某一天
“L”:用于每月,或每周,表示为每月的最后一天,或每个月的最后星期几如“6L”表示“每月的最后一个星期五
“W”:表示为最近工作日,如“15W”放在每月(day-of-month)字段上表示为“到本月15日最近的工作日
"LW":这两个字符可以连用,表示在某个月最后一个工作日,即最后一个星期五。
“#”:是用来指定“的”每月第n个工作日,例 在每周(day-of-week)这个字段中内容为"6#3" or "FRI#3" 则表示“每月第三个星期五


图1:


图2:

猜你喜欢

转载自blog.csdn.net/douml88/article/details/52869365
EAS