FutureTask可取消的异步任务,提供Future的基础实现,并实现了 Runnable接口 。FutureTask 包含了取消与启动计算的方法,查询计算是否完成以及检索计算结果的方法。只有在计算完成 才能检索到结果,调用get()方法时如果任务还没有完成将会阻塞调用线程至到任务完成。一 旦计算完成就不能重新开始与取消计算,但可以调用runAndReset()重置状态后再重新计算。
FutureTask:
1、一个可取消的异步计算

2、 该类提供了 Future的基本实现,提供了启动和取消计算、查询计算是否完成以及检索计 算结果的方法
3、 只有在计算完成后才可检索结果;如果计算尚未完成,get方法将阻塞
4、 计算完成以后,计算不能重启或取消(除非调用runAndReset方法)

一个FutureTask可以用来包装一个Callable或Runnable对象。因为FutureTask实现了 Runnable接口,一个FutureTask可以被提交给一个Executor来执行。

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.