为什么用线程池?解释下线程池参数? -- Java面试
为什么用线程池
- 降低资源消耗。提高线程利用率,降低创建和小回县城的损耗。
- 提高响应速度。任务来了,直接有线程可用,而不是先创建线程再执行。
- 提高线程的可管理性。使用线程池可以统一分配调优监控。
解释下线程池参数
corePoolSize
核心线程数。线程池的基本大小,即在没有任务需要执行的时候线程池的大小,并且只有在工作队列满了的情况下才会创建超出这个数量的线程。maximumPoolSize
最大线程数。线程池中的当前线程数目不会超过该值。如果队列中任务已满,并且当前线程个数小于maximumPoolSize,那么会创建新的线程来执行任务。keepAliveTime
表示超出核心线程数之外的线程的空闲存活时间,也就是核心线程不会消除,但是超出核心线程数的部分线程如果空闲一定的时间则会被消除。TimeUnit
TimeUnit是keepAliveTime的时间单位workQueue
用来存放待执行的任务。假设核心线程都已被使用,还有任务进来则全部放入队列,直到整个队列被放满,如果任务还在持续进入则会开始创建新的线程 (前提是阻塞队列虽满,但线程池内线程数未达到最大线程数)。ThreadFactory
线程工厂,用来生产同一个组内的线程来执行任务。主要用于设置生成的线程名称前缀,是否为守护线程以及优先级等
设置有意义的名称前缀有利于在进行虚拟机分析时,知道线程是由哪个线程工厂创建的
Handler 拒绝策略对象
作用:当任务缓存达到上限时 (即超过workQueue参数能存储的任务数) ,然后就执行拒绝策略,可以看做简单的限流保护。有两种情况:
第一种是调用shutdown()等方法关闭线程池后,这时候即使线程池内还有没执行完的任务正在执行,但是由于线程池已经关闭,我们还向线程提交任务就会拒绝。
另一种情况是达到最大线程数后,线程池没有能力继续处理新提交的任务时,就会拒绝。
转载:
JUC并发编程基础之线程池和线程池参数_狂奔の蜗牛rz的博客-CSDN博客
为什么用线程池?解释下线程池参数? -- Java面试相关推荐
- 为什么用线程池?解释下线程池参数?线程池处理流程?阻塞队列的作用?为什么是先添加列队而不是先创建最大线程?线程池中线程复用原理?
为什么用线程池?解释下线程池参数? 1.降低资源消耗:提高线程利用率,降低创建和销毁线程的消耗. 2.提高响应速度:任务来了,直接有线程可用可执行,而不是先创建线程,再执行. 3.提高线程的可管理性: ...
- 谈谈面试题之为什么用线程池?解释下线程池参数?
一.为什么用线程池 1.降低资源消耗:提高线程利用率,降低创建和销毁线程的消耗. 2.提高响应速度:任务来了,直接有线程可用可执行,而不是先创建线程,再执行. 3.提高线程的可管理性:线程是稀缺资源 ...
- 为什么用线程池?解释下线程池参数?
1.降低资源消耗:提高线程利用率,降低创建和销毁线程的消耗. 2.提高响应速度:任务来了,直接有线程可用可执行,而不是先创建线程,再执行. 3.提高线程的可管理性:线程是稀缺资源,使用线程池可以统一分 ...
- 为什么⽤线程池?解释下线程池参数?
为什么⽤线程池? 降低资源消耗:提⾼线程利⽤率,降低创建和销毁线程的消耗. 提⾼响应速度:任务来了,直接有线程可⽤可执⾏,⽽不是先创建线程,再执⾏. 提⾼线程的可管理性:线程是稀缺资源,使⽤线程池可以 ...
- linux+分离线程+退出,Linux下线程终止操作.pdf
Linux Linux LLiinnuuxx下线程的终止操作 简介: 简介: 简简介介:: 编写Linux下的多线程程序,需要使用头文件pthread.h, 编写Linux下的多线程程序,需要使用头文 ...
- 面试题 为什么用线程池?解释下线程池参数
- 为什么使用线程池,解释下线程池参数
- 浅谈线程池(下):相关试验及注意事项
三个月,整整三个月了,我忽然发现我还有三个月前的一个小系列的文章没有结束,我还欠一个试验!线程池是.NET中的重要组件,几乎所有的异步功能依赖于线程池.之前我们讨论了线程池的作用.独立线程池的存在意义 ...
- Linux下线程池(ThreadPool)
目录 一.线程池相关概念及其优点 二.线程池的实现 一.线程池相关概念及其优点 线程池一种线程使用模式,线程过多会带来这个调度的开销进而影响整体的性能,而线程池是提前准备好了线程等待着管理者进行分配任 ...
最新文章
- 基于Matlab的BP神经网络在语音特征信号识别中的应用
- C++之编码问题(Unicode,ASCII,本地默认)
- bootstrap基础学习十篇
- 锅巴文件共享软件地址和说明
- php生成 优惠券 激活码
- 应届生想要获取web前端开发岗位?这份技能攻略,面试攻略别错过
- 斑马打印机怎么打印二维码_简单介绍斑马打印机---GX430t
- C语言之生成汇编代码(十)
- 开启弹窗_【电脑优化】面对电脑开机“弹窗”雨,你也很无奈呀!
- 若依框架前端Vue项目分析实战
- java 硬盘序列号_java肿么获取硬盘序列号 iteye
- java cxf调用wsdl文件_如何使用CXF将 .wsdl 文件变成java文件
- 复数乘法的交换律、结合律及乘法 对加法的分配律证明过程
- java的StadIn函数_Java經典算法案例---Java深入
- linux yum vsftpd,CentOS 7 使用Yum方式安装配置vsftpd服务
- 查看思科交换机出厂时间
- 三维计算机视觉——相机内参和外参及坐标变换公式
- 蓝桥杯javaB决赛历届真题6-10届
- 怎么把pdf拆分成一页一页的单独文件?
- ERP系统31.83版本发布,八大新功能助力企业管理
热门文章
- ;按F11立即备份晓亮的电脑操作记录并打开记录.AU3 (AutoIt)
- 玩转Linux与运维岗(23)
- 浙江大学机械系制造所2010届毕业生…
- 计算机导论 宋斌,宋斌(计算机科学与技术学院)老师 - 南京理工大学 - 院校大全...
- [免费专栏] Android安全之Android Xposed插件开发,小白都能看得懂的教程
- 理财通app的设计与实现(六)
- Q版本 安卓手机录制系统声音
- 【实战技能】非技术背景经理的技术管理
- 监控摄像头接入GB28181平台实现监控视频直播的详细搭建流程
- Abbirb120型工业机器人_工控产品-ABB IRB120工业机器人-IRB120