Future是一个接口类,定义了5个方法:
通过这5个方法可以看出,Future不但可以获取提交任务的执行结果,甚至还可以取消任务。
Future使用示例摘自JDK中Future示例代码
注意:future.get()方法是阻塞式的,如果调用该方法的时候任务尚未执行完成,则会一直等待下去,直到任务执行结束。
ExecutorService还有一个sumbit方法比较特殊:<T> Future<T> submit(Runnable task, T result);这个方法可以先把result这个参数传给task使用,然后再通过get方法把result返回。
FutureTaskFutureTask是一个实现了Runnable和Future接口的工具类,结合了这两个接口的能力,FutureTask即可以提交给线程任务执行,又可以获取到执行结果。
具体代码示例:
到此这篇关于Java并发工具类Future使用示例的文章就介绍到这了,更多相关Java并发工具类Future内容请搜索七叶笔记以前的文章或继续浏览下面的相关文章希望大家以后多多支持七叶笔记!