这篇文章将为大家详细讲解有关深入浅析Java中线程池的原理,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
ThreadPoolExecutor简介
ThreadPoolExecutor是线程池类。对于线程池,可以通俗的将它理解为"存放一定数量线程的一个线程集合。线程池允许若个线程同时允许,允许同时运行的线程数量就是线程池的容量;当添加的到线程池中的线程超过它的容量时,会有一部分线程阻塞等待。线程池会通过相应的调度策略和拒绝策略,对添加到线程池中的线程进行管理。"
ThreadPoolExecutor数据结构
ThreadPoolExecutor的数据结构如下图所示:
各个数据在ThreadPoolExecutor.java中的定义如下:
// 阻塞队列。private final BlockingQueue<Runnable> workQueue;// 互斥锁private final ReentrantLock mainLock = new ReentrantLock();// 线程集合。一个Worker对应一个线程。private final HashSet<Worker> workers = new HashSet<Worker>();// “终止条件”,与“mainLock”绑定。private final Condition termination = mainLock.newCondition();// 线程池中线程数量曾经达到过的最大值。private int largestPoolSize;// 已完成任务数量private long completedTaskCount;// ThreadFactory对象,用于创建线程。private volatile ThreadFactory threadFactory;// 拒绝策略的处理句柄。private volatile RejectedExecutionHandler handler;// 保持线程存活时间。private volatile long keepAliveTime;private volatile boolean allowCoreThreadTimeOut;// 核心池大小private volatile int corePoolSize;// 最大池大小private volatile int maximumPoolSize;
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容猜你喜欢
AI推送时光机深入浅析Java中线程池的原理
后端开发2023-05-31
深入剖析 Java 线程池的原理与实践
后端开发2024-03-13
深入浅析Java中 JVM的原理
后端开发2023-05-31
深入理解Java编程线程池的实现原理
后端开发2023-05-30
深入浅析java中反射的原理
后端开发2023-05-31
深入浅析JAVA中封装的原理
后端开发2023-05-31
深入浅析java中堆排序的原理
后端开发2023-05-31
深入浅析Java中线程的优先级
后端开发2023-05-31
深入浅析Java项目中的多线程
后端开发2023-05-31
深入浅析Java中输出HelloWorld的原理
后端开发2023-05-31
深入浅析java 中HashMap的实现原理
后端开发2023-05-31
深入浅析java 中volatile与lock的原理
后端开发2023-05-31
深度源码解析Java 线程池的实现原理
后端开发2024-04-02
深入浅析java 1.8 中动态代理的原理
后端开发2023-05-31
Java线程池由浅入深掌握到精通
后端开发2024-04-02
深入浅析Java中多线程优先级
后端开发2023-05-31
深入浅出解析Java ThreadLocal原理
后端开发2024-04-02
Java线程池ThreadPoolExecutor源码深入分析
后端开发2024-04-02
深入浅析Java中的AtomicLongArray原子类
后端开发2023-05-31
咦!没有更多了?去看看其它编程学习网 内容吧