面试题

jdk自带的线程池

newFixedThreadPool 固定大小线程池

同时可运行的线程数量是固定的。当提交新任务时,如果线程池中已有线程正在执行任务且数量达到上限,则新任务将被放入队列中等待,直到有线程空闲出来。适用于处理长期存在且可以并行执行的任务,有助于防止资源过度消耗。

newCachedThreadPool 缓存线程池

线程池的大小不固定,可根据需要自动调整。当提交新任务时,若线程池中没有空闲线程,则会创建新的线程来执行任务。同时,对于空闲线程,线程池会根据其空闲时间进行回收以避免资源浪费。适用于处理大量短生命周期的异步任务,任务的并发度可能会动态变化。

newSingleThreadExecutor 单线程线程池

线程池只有一个工作线程,所有任务按顺序(通常为FIFO)执行

newScheduledTheadPool 定时/周期性任务线程池

除了具备基本的线程池功能外,还支持定时执行任务一次(延时执行)或定期重复执行任务(周期执行)。线程池大小可以自定义,但通常保持相对固定。适用于需要调度定时任务或周期性任务的场景。

阿里巴巴不让使用JDK自带的线程池

资源耗尽

newCachedThreadPool 由于没有预设最大线程数限制,当任务量过大时,可能导致线程数无限制增长,从而耗尽系统资源宕机

队列容量

FixedThreadPoolSingleThreadPool所使用的阻

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值