线程-线程池

线程池介绍:

开辟一片内存空间管理尚未死亡的线程,通过线程池进行线程调度

线程池类型:

固定尺寸的线程池:
固定了线程数量,加入线程数超过最大线程池最大线程数时,进入该线程池需要等待
单任务线程池:
线程池只持有一个线程,后续线程进入线程池需要等待,使用无界队列进行管理
ps:
无界队列:底层采用CAS自选进行队列管理,系统资源耗尽前没有空间上限
可变尺寸连接池:
线程池尺寸不定,没有大小限制
延迟连接池:
可以使线程进行延迟启动或者定期启动
单任务延迟连接池:
单线程延迟启动
自定义线程池:
自定义线程池参数:
corePoolSize - 池中所保存的线程数,包括空闲线程。
maximumPoolSize - 池中允许的最大线程数。
keepAliveTime -当线程数大于核心时,此为终止前多余的空闲线程等待新任务的最长时间。
unit -keepAliveTime - 参数的时间单位。
workQueue - 执行前用于保持任务的队列。此队列仅保持由execute方法提交的Runnable任务。
可分为IO密集型和计算密集型:
通过派系公式:
Nthreads=NcpuUcpu(1+w/c)
Ncpu=CPU核心数
Ucpu=cpu使用率,0~1
W/C=等待时间与计算时间的比率
来确定线程池的最大线程数,即:
IO密集型=2Ncpu
计算密集型=Ncpu+1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值