采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
你好老师,想请问下fixedThreadPool的corePoolSize就是这个pool刚创建出来就拥有的线程数对吧,在这里keepAliveTime是不是就没有意义了,因为fixedThreadPool的线程数是恒定的不会因为空闲而terminated对吧?
同学好,还是有意义的,keepAliveTime是线程池中空闲线程等待工作的超时时间
FixedThreadPool的keepAliveTime=0, 也就是当线程池中的线程数大于corePoolSize, 多余的空闲线程会被立即终止,也就是说,虽然总数恒定是corePoolSize,但是里面的线程是能够被替换掉的
可是老师,源码里写的在FixedThreadPool中的maximumPoolSize和corePoolSize数量是一样的,这样不就不会有线程数大于corePoolSize的情况了吧,我的理解对吗
同学好,是的呀,所以一旦大于corePoolSize,线程池由于是keepAliveTime=0,所以多出来的线程就会被立马干掉,看起来就是corePoolSize大小,但是会存在线程替换呢
好的谢谢老师!
登录后可查看更多问答,登录/注册
招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航
1.8k 27
2.7k 22
1.2k 15
1.4k 14
1.3k 14