Spring ThreadPoolTaskExecutor线程池

原创
2015/07/01 12:00
阅读数 1.5W

1:首先配置线程池(在spring配置文件中配置,我是在applicationContext.xml中配置的)

<!-- 异步线程池 -->
<bean id="taskExecutor"
      class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
    <!-- 核心线程数 -->
    <property name="corePoolSize" value="5" />
    <!-- 最大线程数 -->
    <property name="maxPoolSize" value="10" />
    <!-- 队列最大长度 >=mainExecutor.maxSize -->
    <property name="queueCapacity" value="100" />
    <!-- 线程池维护线程所允许的空闲时间 -->
    <property name="keepAliveSeconds" value="3000" />
    <!-- 线程池对拒绝任务(无线程可用)的处理策略 -->
    <property name="rejectedExecutionHandler">
        <bean class="java.util.concurrent.ThreadPoolExecutor$CallerRunsPolicy" />
    </property>
</bean>

2:就是注入taskExecutor并且使用

直接把线程丢到线程池中,线程池会控制何时启动它,会自动调用它的RUN方法

3:线程接口(ResponseQueueThread)

到此结束,哈哈,很简单,欢迎各种吐槽,有更好的还请推荐,thank you!谢谢


展开阅读全文
打赏
1
14 收藏
分享
加载中
更多评论
打赏
0 评论
14 收藏
1
分享
返回顶部
顶部