Java线程池
Posted Joshua
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java线程池相关的知识,希望对你有一定的参考价值。
java.util.concurrent包
接口及相关类的继承关系:
Executor
|-ExecutorService <- ThreadPoolExecutor
|-ScheduledExecutorService <- ScheduledThreadPoolExecutor
由于ThreadPoolExecutor和ScheduledThreadPoolExecutor构造函数过于复杂,因此使用类Executors对其进行默认设置
Executors内部有五个产生线程池的工厂方法(方法内部对ThreadPoolExecutor和ScheduledThreadPoolExecutor的参数进行默认设置):
1. newCachedThreadPool()
无界线程池:有任务时创建新线程,空闲线程保留60s自动回收
2. newFixedThreadPool()
固定大小线程池:空闲保留,若任务超出线程池大小则等待
3. newSingleThreadExecutor()
只有一个工作线程,依次执行任务
4. newScheduledThreadPool()
按时间计划进行任务的单个工作线程
5. newSingleScheduledExecutor()
按时间计划(定时、周期任务)进行任务的线程池
以上是关于Java线程池的主要内容,如果未能解决你的问题,请参考以下文章