springboot默认线程池
时间: 2023-08-23 15:12:24 浏览: 61
Spring Boot 默认使用的是 Tomcat 的线程池,即 TomcatThreadPool。这是一个基于 Java Executor 的线程池,可以配置在 application.properties 或 application.yml 文件中。默认情况下,TomcatThreadPool 的核心线程数为 10,最大线程数为 200,线程空闲时间为 60 秒。你可以根据自己的需求进行配置和调整。
相关问题
给我一个测试SpringBoot默认线程池ThreadPoolTaskExecutor是否是单线程运行的例子,复杂点的
SpringBoot默认的线程池ThreadPoolTaskExecutor是多线程运行的。
但是,如果你想测试它是否是单线程运行的,你可以这样做:
1. 在你的SpringBoot应用中配置线程池,将线程池的核心线程数和最大线程数都设置为1。这样,线程池中就只会有1个线程。
2. 创建一个任务,让它打印当前线程的名称。
3. 使用线程池的execute方法执行该任务。
4. 再创建另一个任务,让它打印另一个字符串。
5. 使用线程池的execute方法执行该任务。
如果线程池是单线程运行的,那么这两个任务会按顺序依次执行,输出的线程名称也都是一样的。如果是多线程运行的,那么这两个任务可能会同时执行,输出的线程名称也可能不同。
springboot 配置线程池
在Springboot中,配置线程池主要有两种方式:配置默认线程池和提供自定义线程池。从使用角度来看,两种配置方式并无优劣之分。如果使用默认线程池,可以直接使用@Async注解来将方法提交到默认线程池中执行。如果需要使用自定义线程池,需要在配置文件中进行相关配置,并通过@Async("自定义线程池bean对象名")的方式来使用该线程池。例如,在配置文件application-task.yml中,可以使用spring.task.execution.pool.*的参数来配置自定义线程池的属性,如core-size、max-size、keep-alive、queue-capacity等。具体的线程池处理流程如下:首先判断线程池中的核心线程是否都在执行任务,如果有空闲的核心线程或者还有未创建的核心线程,则创建一个新的工作线程来执行任务;如果所有核心线程都在执行任务,则判断工作队列是否已满,如果工作队列未满,则将新提交的任务存储在工作队列中;如果工作队列已满,则判断线程池中的线程是否都处于工作状态,如果有空闲的线程,则创建一个新的工作线程来执行任务;如果已经没有空闲的线程,则根据饱和策略来处理该任务。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [Springboot应用中线程池配置教程(2021版)](https://blog.csdn.net/yu102655/article/details/114846051)[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_1"}}] [.reference_item style="max-width: 50%"]
- *3* [Springboot线程池配置](https://blog.csdn.net/yu619251940/article/details/127862318)[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_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)