当我们用到多个定时器的时候,有些定时器可能执行时间特别长,比如两三个小时。如果对其他定时器,尤其是按频率执行的定时器的精确率要求较高的时候,肯定就会出问题了。
这时候我们就需要用到多线程的定时器,其实很简单,因为定时器默认线程为单线程,所以我们修改一下它的线程个数上限就行了,具体就是在XML里面加几个配置,今天花了一天来解决这个问题,避免以后再遇到,所以记录以下~~~~
以下为XML的代码
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
classpath:/org/springframework/beans/factory/xml/spring-beans-4.1.xsd
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-4.1.xsd">
<!-- 启用annotation方式 -->
<task:annotation-driven scheduler="myScheduler" />
<!-- 配置任务线程池 (这里配置线程个数)-->
<task:scheduler id="myScheduler" pool-size="5" />
</beans>

浙公网安备 33010602011771号