ThreadPoolExecutor原理及使用
来源:互联网 发布:php代码混淆解密工具 编辑:程序博客网 时间:2024/05/21 08:40
ThreadPoolExecutor原理及使用
分类:
版权声明:本文为博主原创文章,未经博主允许不得转载。
目录(?)[+]
大家先从ThreadPoolExecutor的总体流程入手:
针对ThreadPoolExecutor代码,我们来看下execute方法:
我们再看下真正的线程执行者(Worker):
通过上述代码,总结下四个关键字的用法
- corePoolSize 核心线程数量
线程保有量,线程池总永久保存执行线程的数量
- maximumPoolSize 最大线程数量
最大线程量,线程最多不能超过此属性设置的数量,当大于线程保有量后,会新启动线程来满足线程执行。
- 线程存活时间
获取队列中任务的超时时间,当阈值时间内无法获取线程,则会销毁处理线程,前提是线程数量在corePoolSize 以上
- 执行队列
执行队列是针对任务的缓存,任务在提交至线程池时,都会压入到执行队列中。所以这里大家最好设置下队列的上限,防止溢出
ThreadPoolExecuter的几种实现
- CachedThreadPool 执行线程不固定,
坏处:只能用在短时间完成的任务(占用时间较长的操作可以导致线程数无限增大,系统资源耗尽)
- 单线程线程池
好处:针对单cpu,单线程避免系统资源的抢夺
坏处:多cpu多线程时,不能完全利用cpu资源
- 固定长度线程池
好处:线程数量固定,不会存在线程重复初始化
坏处:没有对队列大小进行限制,线程初始化后,再也不能回收线程资源
0 0
- ThreadPoolExecutor原理及使用
- ThreadPoolExecutor原理及使用
- java线程池ThreadPoolExecutor原理及使用
- ThreadPoolExecutor原理与使用
- ThreadPoolExecutor的原理及使用方法
- ThreadPoolExecutor简单介绍及使用
- ThreadPoolExecutor机制 及使用探讨
- ThreadPoolExecutor 原理
- ThreadPoolExecutor原理
- ThreadPoolExecutor原理
- Java ThreadPoolExecutor线程池原理及源码分析
- ThreadPoolExecutor使用
- ThreadPoolExecutor使用
- ThreadPoolExecutor使用
- ThreadPoolExecutor使用
- Java线程池(ThreadPoolExecutor)原理分析与使用
- Java 线程池(ThreadPoolExecutor)原理分析与使用 – 码农网
- Java 线程池(ThreadPoolExecutor)原理分析与使用
- SDP协议分析
- 埃拉托色尼筛选法--JAVA
- dark story
- div li的多行多列 无刷新分页
- hdu oj 1200 To and Fro
- ThreadPoolExecutor原理及使用
- Python.科学计算 -- 综合运用,替代Matlab
- HDU 1165 Eddy's research II (数学推导)
- 【微信开发】-发送位置进行Route Matrix API v2.0批量算路接口, 主要代码在private function receiveLocation($object)
- linux(ubuntu)下成功编译安装了下切片软件CuraEngine
- 以太网帧结构
- 算法与数据结构题目 4.3 不知道取什么好
- 创建自己的MVC框架,深入理解mvc
- Android 属性动画进阶篇(篇2)