if(Thread.currentThread().isInterrupted()){ throw new InterruptedException(); }
当创建了Future实例,任务可能有以下三种状态: 1.等待状态。此时调用cancel()方法不管传入true还是false都会标记为取消,任务依然保存在任务队列中,但当轮到此任务运行时会直接跳过。 2.完成状态。此时cancel()不会起任何作用,因为任务已经完成了。 3.运行中。此时传入true会中断正在执行的任务,传入false则不会中断。 你说的情况可能是第一种状态。
62,635
社区成员
307,269
社区内容
加载中
试试用AI创作助手写篇文章吧