1. 为什么线程池是并发核心?
统一线程管理
降低资源消耗
防止线程失控
2. ThreadPoolExecutor 执行流程(重点)
提交任务
↓
核心线程
↓
任务队列
↓
非核心线程
↓
拒绝策略
3. 线程池参数如何设置?
CPU 密集型:
线程数 = CPU 核心数 + 1
IO 密集型:
线程数 = CPU 核心数 * 2
4. 常见拒绝策略分析
5. 生产事故案例
❌ Executors.newFixedThreadPool()
无界队列
内存泄漏
OOM
✅ 必须手写 ThreadPoolExecutor
🎯 系列总结(非常适合结尾)
Java 并发的核心不是“API 会用”,
而是 线程模型 + 内存模型 + 锁机制 + 线程池设计。
🚀 接下来我还能继续帮你:
再写 5 篇高级篇
volatile 原理与源码
CAS & Atomic
AQS 全流程
并发容器
死锁排查实战
或 按 Halo / Clarity 主题帮你做专栏目录页
或 直接改成面试专用版本