这是我的上一个问题的后续。
假设我有一个任务,它执行一个可中断的阻塞调用。我想将其作为
我希望取消的操作如下:
假设我有一个任务,它执行一个可中断的阻塞调用。我想将其作为
Future
运行,并使用Promise
的failure
方法取消它。我希望取消的操作如下:
如果在任务完成之前取消任务,我希望任务立即完成,如果已经开始,则中断阻塞调用,并且
Future
会调用onFailure
。如果在任务完成后取消任务,我希望得到一个状态,表明取消失败,因为任务已经完成。
val f = Future(fun(p.future)) ; p tryCompleteWith f
。 - Francisco López-Sancho