0
我有下面的代码:awaitTermination块主线程
ExecutorService executorService = Executors.newCachedThreadPool();
executorService.execute(() -> {
while(true) {
System.out.println("Here");
}
});
executorService.shutdown();
try {
executorService.awaitTermination(5,TimeUnit.MILLISECONDS);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Finished");
超时后 - 5毫秒,线程停止写入消息“在这里”和主线程打印“完成”,但并没有终止,等待没有任何感。这种行为的原因是什么?
在我的Linux机器上打印大约100次在这里,然后打印一次完成并永久封锁。 – AXSSS