Future是Java5增加的类,它用来描述一个异步计算的结果。你可以使用 isDone 方法检查计算是否完成,或者使用 get 方法阻塞住调用线程,直到计算完成返回结果。你也可以使用 cancel 方法停止任务的执行。下面来一个栗子:
public class FutureDemo { public static void main(String[] args) { ExecutorService es = Executors.newFixedThreadPool(10); Future<Integer> f = es.submit(() ->{ Thread.sleep(10000); // 结果 return 100; }); // do something Integer result = f.get(); System.out.println(result); // while (f.isDone()) { // System.out.println(result); // } } }