FutureTask 包装器在简单的 Callable/Runnables 上提供了什么?我见过一些人以这种方式使用期货,但我不确定它真正为游戏增加了什么。
Callable<Integer> myComputation = () -> {return 0;};
FutureTask<Integer> task = new FutureTask<Integer>(myComputation);
//Why this...
Executors.newSingleThreadExecutor().execute(task);
task.get();
//...over the conventional approach?
Future<Integer> future = Executors.newSingleThreadExecutor().submit(myComputation);
future.get();