spring中的quartz不要并发执行 要设置哪呢
我现在用的Spring的2.5.6 Quartz的1.6然后我现在的任务比如设置为5分钟
但是调用的方法执行时间超过了5分钟
理想上我是希望 比如该方法这次调用超过5分钟 那下次调用就会不调用 或延时调用。
我查阅了一些资料发现 国内这方面资料不多。
好不容易在数据库里 qrtz_job_details表里找到了 is_nonconcurrent(VARCHAR2(1)) 这个字段,我后来把他设成了1 不过貌似还是不行。
求大神给个答案。小弟在此谢谢了 spring quartz --------------------编程问答-------------------- 我记得有一个参数,是设置执行模式的,大概意思是:比如您设置了5分钟,可以在该任务执行之后的5分钟后继续执行下一次,就是上一次任务必须执行完毕之后执行下一次。还有就是无论上次任务有没有执行完毕,那么过五分钟之后继续执行下次任务。 --------------------编程问答-------------------- Quartz没搞过,但是我的做法一般是把这些任务用单独的线程去做。 --------------------编程问答-------------------- <property name="concurrent">可以设置任务是否并行,希望对你有帮助。
<!--定时执行配置 -->
<bean id="testQuartz" class="com.sample.quartz.QuartzSimple" />
<!-- bean触发方法配置 -->
<bean name="quartzBean"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- bean名字 -->
<property name="targetObject" ref="testQuartz" /><!--目标对象-->
<!-- bean方法 -->
<property name="targetMethod"><!--目标方法-->
<value>test</value>
</property>
<property name="concurrent"><!--配置为false不允许任务并发执行-->
<value>false</value>
</property>
</bean> --------------------编程问答-------------------- 5225[i][/i][u][/u] --------------------编程问答-------------------- 应该是fixedDelay模式执行更好,这个是指每个任务间固定时间间隔。
fixedRate是按固定时间频率。
补充:Java , Java EE