后来我在Callable过程中命中了断点,就好像Future cancel()无效。
Future.cancel(true)删除队列中尚未运行的作业,但如果该作业已在运行,则执行
Thread.interrupt()。这将中断位的线程上,并导致任何
sleep(),
wait()和其他一些方法抛出
InterruptedException。
要认识到它确实是很重要的 不 停止线程。您需要主动检查线程循环中的中断标志或正确处理
InterruptedException。

后来我在Callable过程中命中了断点,就好像Future cancel()无效。
Future.cancel(true)删除队列中尚未运行的作业,但如果该作业已在运行,则执行
Thread.interrupt()。这将中断位的线程上,并导致任何
sleep(),
wait()和其他一些方法抛出
InterruptedException。
要认识到它确实是很重要的 不 停止线程。您需要主动检查线程循环中的中断标志或正确处理
InterruptedException。