说说你对于线程池的理解?(面试超详细)

面试者解释了线程池如何提高效率,避免频繁创建线程的开销,通过控制并发数、拒绝策略和等待队列管理线程。重点提及了线程池的七个关键参数如最大核心数和超时时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

面试官:说说你对于线程池的理解?

这个时候呢,我自己的理解就是可以先说明一下未采用线程池之前的弊端。

我:首先我们没有使用线程池之前呢,是极其的没有效率的,需要频繁的创建和消耗线程比较耗时。

之后呢,再讲线程池的好处。

我:而线程池则可以避免这种开销,并且提高了线程的利用率,提高线程的响应速度,并且还控制了最大并发数(并发数呢就是拒绝策略,后续可以自己进行了解。)。后续的话,各位自己想,我放图下面以及解释,相信都明白了。

例如我们的线程对象目前只有三个,而此时来了四个请求,那么第四个就先进入等待队列中,第一个执行完毕之后,然后我们第四个就去拿那个线程对象,而如果来了很多很多线程怎么办呢?而我们等待队列也是有容量限制的,当达到一定的内存后,后续来的请求不会再进入等待队列,此时的话我们的线程池会启用一种应急策略,在内部再次新开一个线程对象,但是这里要注意,不是顺序的获取这个线程对象,而是后续来的使用线程对象哦,其余的继续等待,当然我们也不会一直的去创建这个线程对象,有一个最大线程数的,当达到了最大线程数之后,线程池就会使用一种拒绝策略,将其他的请求全部进行拒绝。

然后就是我们临时创建的线程对象,也是会设置一个时间的,如果在这个时间没有被使用的话,那么是会释放掉的。

注意!线程池的七个参数都有:最大核心数,最大线程数,超时时间,时间单位,线程工厂,拒绝策略,等待队列。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值