FutureTask是Java的一個類,用于表示一個可能會產生結果的異步任務。它可以用于多線程編程,通常與ExecutorService一起使用。
使用FutureTask的一般步驟如下:
Callable<Integer> callable = new Callable<Integer>() {
@Override
public Integer call() throws Exception {
// 執行異步任務
return 42;
}
};
FutureTask<Integer> futureTask = new FutureTask<>(callable);
ExecutorService executor = Executors.newFixedThreadPool(1);
executor.submit(futureTask);
try {
Integer result = futureTask.get();
System.out.println("異步任務的結果是:" + result);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
通過以上步驟,就可以使用FutureTask來執行異步任務并獲取結果。