2 sunsson sunsson 于 2016.05.12 10:23 提问

ThreadPoolExecutor源码shutdown问题 10C

图片说明
上图中的方法是ThreadPoolExecutor中shutdown中执行的中断空闲线程的方法,在此方法中会执行tryLock()方法,在下图中会从队列中获取执行任务,然后获取锁图片说明
使我疑惑的地方是如果任务获取成功但是还没有获取锁的时候,那么interruptIdleWorkers中就会获取到锁,从而认为线程是空闲的,然后发送中断信息,那么此时获取的task岂不就不能执行了?忘大神解答,不胜感激

2个回答

CSDNXIAOD
CSDNXIAOD   2016.05.16 11:21

线程池ThreadPoolExecutor类源码分析
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

silehaixianghuirenj
silehaixianghuirenj   2016.10.08 01:21

olExecutor源码shutdown问题 10C
图片说明
上图中的方法是ThreadPoolExecutor中shutdown中执行的中断空闲线程的方法,在此方法中会执行tryLock()方法,在下图中会从队列中获取执行任务,然后获取锁图片说明,
使我疑惑的地方是如果任务获取成功但是还没有获取锁的时候,那么interruptIdleWorkers中就会获取到锁,从而认为线程是空闲的,然后发送中断信息,那么此时获取的task岂不就不能执行了?忘大神解答,不胜感激

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!