JAVA 8 Future

132 阅读1分钟

Future本身是一个接口,提供取消、查询取消、查询完成、获取结果、设置超时获取结果五个接口方法;默认提供了PendingFuture<V, A>、SwingWorker<T, V>、ForkJoinTask、CompletedFuture、FutureTask五种实现;也可以使用ExecutorService的submit、invokeAll方法生成Future;
其基本原理,在于调用获取结果(或超时获取)时,若未完成则挂起线程,完成后再返回结果;