Java线程池之:如何回收临时线程
首先是runWroker()部分,worker是线程池中事实上的线程,runWorker()方法是worker工作的核心方法,该方法会循环尝试从阻塞队列获取任务并执行,getTask()方法尝试从阻塞队列中获取任务,当满足回收条件(超时 && 超过核心线程数),会退出循环,执行线程回收工作.否则, poll()方法会在超过限定时间后返回null, 触发判断机制, 此时如果工作线程数大于核心线程数, 就会返回null, 在runWroker()方法中回收工作线程.
原创
2023-07-03 21:13:17 ·
384 阅读 ·
1 评论