代码中expression参数即cron表达式,所以在spring自带的定时任务中正确的cron表达式只能是6个域,否则会抛出IllegalArgumentException提示:Cronexpressionmustconsistof6fields(cron表达式必须由6个域组成)。
例子:@Scheduled(fixedDelay=1000*10)//10秒发送一次
······················scheduled1开始执行·······················2018-07-2714:00:00
······················scheduled1结束执行·······················2018-07-2714:00:05
······················scheduled2开始执行·······················2018-07-2714:00:15
······················scheduled2结束执行·······················2018-07-2714:00:20
······················scheduled3开始执行·······················2018-07-2714:00:30
······················scheduled3结束执行·······················2018-07-2714:00:35
例子:@Scheduled(fixedRate=1000*10)//10秒发送一次
······················scheduled2开始执行·······················2018-07-2714:00:10
······················scheduled2结束执行·······················2018-07-2714:00:15
······················scheduled3开始执行·······················2018-07-2714:00:20
······················scheduled3结束执行·······················2018-07-2714:00:25
1.定时器的参数有两种写法是用cron表达式,或者使用fixedDelay、fixedRate等参数直接配置
需要注意的是使用cron表达式的方法,在项目首次启动后不会直接运行,而是等到执行周期才会执行
测试说明:
使用第一种配置方式,项目启动后方法不会执行,而是等到执行周期到了才会执行方法
使用第二种参数方式的方法,项目启动成功后马上执行了一次
2.定时器默认为单线程,所以如果项目中使用多个定时器要配置线程池
注意这里的@EnableScheduling,使用它来开启定时器注解
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
目录一、正则表达式应用举例1、C#校验合法性:2、C#限制输入3、正则表达式匹配闭合HTM...
目录一、ObjectContext对象上下文1、ObjectContext和DbContext的对比2、ObjectContext...
IronPython是一种在.NET及Mono上的Python实现,由微软的JimHugunin所发起,是一...
一、介绍Topshelf是一个开源的跨平台的宿主服务框架,支持Windows和Mono,只需要几行...