在我的 Callable 代码中,我使用信号将多个结束行为通知给另一个线程。Callable 对象在 Executor 中与 FutureTasks 一起排队。他们也可能在排队后被取消。
现在,我的问题是我依赖于至少正在启动的任务才能让我的信号正常工作,但是如果执行程序在有机会运行它之前被标记为已取消,它看起来只是跳过一个任务。
那么,有没有办法保证任务总是启动,并且在运行时总是被取消(通过 InterruptedException)。
另外,你能检查一个任务是否还没有开始但失败了?
在我的 Callable 代码中,我使用信号将多个结束行为通知给另一个线程。Callable 对象在 Executor 中与 FutureTasks 一起排队。他们也可能在排队后被取消。
现在,我的问题是我依赖于至少正在启动的任务才能让我的信号正常工作,但是如果执行程序在有机会运行它之前被标记为已取消,它看起来只是跳过一个任务。
那么,有没有办法保证任务总是启动,并且在运行时总是被取消(通过 InterruptedException)。
另外,你能检查一个任务是否还没有开始但失败了?