线程池

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程池相关的知识,希望对你有一定的参考价值。

多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。  

线程池核心类:ThreadPoolExecutor

四种线程池:

    newCachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理的需要,可以灵活回收空闲线程,若无可回收,则创建新的线程。

    newFixedThreadPool:创建一个定长线程池,可控制线程最大的并发数,超出的线程会在队列中等待。

    newScheduledThreadPool:创建一个定长的线程池,支持定时及周期性任务执行。

    newSinleThreadExecutor:创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,保证所有任务按照指定顺序执行。

 

一个线程池主要包括以下四个基本组成部分:

   1.线程池管理器:用于创建并管理线程池,包括创建线程池,销毁线程池,添加新任务。

   2.工作线程:线程池中线程在没有任务时处于等待状态,可以循环地执行任务。

   3.任务接口:每个任务必须实现的接口,以供工作线程调度任务的工作,它主要规定任务入口,任务完成或收尾工作等。

   4.任务队列:用于存放没有处理的任务,提供一种缓冲机制。

以上是关于线程池的主要内容,如果未能解决你的问题,请参考以下文章

什么叫线程池?线程池如何使用?

多线程(六):线程池

多线程(六):线程池

十五、线程池(六)自动创建线程池的弊端

java 如何获得线程池中正在执行的线程数?

线程池参数与线程池调优