关闭BlockingDeque
我在将一个后台线程至于executor中,并使用executor.shutdown(),并且无法终止进入死循环的线程,因为他只会等任务完成。,但是JVM并未退出。
后台线程run方法:
while (true) { Protocol protocol;try {protocol = protocolsQueue.take();protocol.execute(this);} catch (InterruptedException e) {logger.debug("收到服务器中断命令,退出执行协议线程");}}
@Overridepublic void run() {while (running) {Protocol protocol;try {protocol = protocolsQueue.take();protocol.execute(this);} catch (InterruptedException e) {logger.debug("收到服务器中断命令,退出执行协议线程");running = false;}}}