这篇文章我们来总结线程池(ThreadPoolExecutor)的核心参数和工作流程。也是针对 Android线程与线程池面试题总结文中3.2节的解答。
ThreadPoolExecutor 的 7 个核心构造参数
ThreadPoolExecutor 是线程池的核心实现类,通过配置其构造参数可以精确控制线程池的行为。
-
corePoolSize (核心线程数)
- 定义: 线程池中长期存活的线程数量,即使它们处于空闲状态也不会被回收(除非设置了 allowCoreThreadTimeOut 为 true)。
- 作用: 作为线程池的基本工作力量,用于处理绝大多数稳定流入的任务。
- 类比: 一个公司的正式员工。
-
maximumPoolSize (最大线程数)
- 定义: 线程池允许创建的最大线程数量。
- 作用: 当任务激增,核心线程已满且任务队列也满了之后,线程池会临时“招聘”新的线程(非核心线程)来帮忙处理任务,直到线程数达到此上限。
- 注意: corePoolSize 和 maximumPoolSize 设置为相同时,线程池的大小就是固定的。
-
keepAliveTime (非核心线程空闲存活时间)

最低0.47元/天 解锁文章
836

被折叠的 条评论
为什么被折叠?



