quartz concurrent说明
来源:互联网 发布:手机下东西被网络劫持 编辑:程序博客网 时间:2024/05/16 10:23
以前经常在任务调度程序中使用Spring集成的Quartz,这种方式可以用简单的声明式配置即可实现定时任务,并结合了Spring自身的Bean的管理功能,非常方便。配置样本如下:
其中concurrent属性标识的解释为:对于相同的JobDetail,当指定多个Trigger时, 很可能第一个job完成之前,第二个job就开始了。指定concurrent设为false,多个job不会并发运行,第二个job将不会在第一个job完成之前开始。
那么此处的第二个job到底是被推迟执行了,还是被取消了呢? 今天带着这个疑问做了一个小实验,具体做法如下:将任务的Trigger设置为每10秒钟执行一次,然后在执行的任务体内让Thread暂停15秒钟,这样不同的job之间肯定会有时间上的重叠。当启动程序之后,发现前一个job执行结束的时刻的秒数为15,而且第二个本来在10s就执行的job马上就启动了。
- <bean id="transmitTask"
- class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
- <property name="targetObject">
- <ref bean="transTaskBusiness" />
- </property>
- <property name="targetMethod">
- <value>execute</value>
- </property>
- <property name="concurrent">
- <value>false</value>
- </property>
- </bean>
其中concurrent属性标识的解释为:对于相同的JobDetail,当指定多个Trigger时, 很可能第一个job完成之前,第二个job就开始了。指定concurrent设为false,多个job不会并发运行,第二个job将不会在第一个job完成之前开始。
那么此处的第二个job到底是被推迟执行了,还是被取消了呢? 今天带着这个疑问做了一个小实验,具体做法如下:将任务的Trigger设置为每10秒钟执行一次,然后在执行的任务体内让Thread暂停15秒钟,这样不同的job之间肯定会有时间上的重叠。当启动程序之后,发现前一个job执行结束的时刻的秒数为15,而且第二个本来在10s就执行的job马上就启动了。
由此可见,concurrent属性实际是将job推迟执行了。
实例:
阅读全文
0 0
- quartz concurrent说明
- Quartz's autoStartup & concurrent
- Quartz中的concurrent属性
- quartz job concurrent 并发设置
- 关于Spring集成Quartz的concurrent属性
- 关于Spring集成Quartz的concurrent属性
- 关于Spring集成Quartz的concurrent属性
- 关于Spring集成Quartz的concurrent属性
- 关于Spring集成Quartz的concurrent属性
- 关于Spring集成Quartz的concurrent属性
- quartz 配置文件说明
- Quartz cronExpression配置说明
- Quartz CronTrigger 配置说明
- Quartz表达式说明
- Quartz CronTrigger配置说明
- Quartz CronTrigger配置说明
- quartz 参数说明
- quartz 参数说明
- 这场不一样的2017杭州云栖大会!我们在等你!
- 随机生成指定个数的汉字
- pthread_join函数介绍和使用实例
- 设置树莓派的串口终端
- 在eclipse中部署maven web遇到的问题
- quartz concurrent说明
- Maven部署Tomcat插件的常见错误
- 浅谈Activity 生命周期
- hibernate -- HQL语句总结
- Nginx启动项目时,Nginx闪退无法打开的问题
- 这些流氓软件,拖家带口的侵占我的电脑,也是够“流氓”的!
- hibernate 注解 一对一和一对多
- linux命令--ln
- 面向对象设计原则之依赖倒转原则