xml配置ThreadPoolExecutor
时间: 2023-10-17 08:31:56 浏览: 111
ThreadPoolTaskExecutor是一个可以通过XML方式配置的线程池任务执行器。通过以下代码可以进行XML配置:
```xml
<bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
<!-- 核心线程数 -->
<property name="corePoolSize" value="4000" />
<!-- 最大线程数 -->
<property name="maxPoolSize" value="20000" />
<!-- 队列最大长度 -->
<property name="queueCapacity" value="2000" />
<!-- 线程池维护线程所允许的空闲时间 -->
<property name="keepAliveSeconds" value="30" />
<!-- 线程池对拒绝任务(无线程可用)的处理策略 -->
<property name="rejectedExecutionHandler">
<bean class="java.util.concurrent.ThreadPoolExecutor$DiscardPolicy" />
</property>
</bean>
```
这个配置中设置了核心线程数、最大线程数、队列最大长度、线程池维护线程所允许的空闲时间以及对拒绝任务的处理策略。
另外,如果使用ThreadPoolExecutor类来配置线程池,可以使用AbortPolicy()来抛出java.util.concurrent.RejectedExecutionException异常。
另一种常见的线程池配置方法是使用Executors工厂方法。例如,可以使用Executors.newFixedThreadPool(5)来创建一个固定大小为5的线程池,并通过pool.execute(new Runnable())方法来执行具体的线程任务。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [线程池ThreadPoolTaskExecutor配置说明](https://blog.csdn.net/weixin_34101229/article/details/89618355)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [线程池ThreadPoolExecutor配置、参数详解及例子](https://blog.csdn.net/dhklsl/article/details/83787615)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文