java中的futureTask
时间: 2023-05-23 19:01:09 浏览: 59
FutureTask是Java并发编程中的一个类,他可以用来异步执行一个任务,并在任务执行完成后获取它的结果。FutureTask实现了Future接口和Runnable接口,可以被用来包装一个Callable或Runnable对象。他提供了get()方法,用于获取任务执行结果,这个方法会等待任务执行完成再返回结果。同时FutureTask还提供了cancel()方法,可以取消任务的执行。
相关问题
java 中的 futuretask
FutureTask 是 Java 中的一个类,它实现了 Future 接口和 Runnable 接口,可以用来异步执行任务并获取任务执行结果。它可以在多线程环境下使用,可以通过 get() 方法获取任务执行结果,也可以通过 cancel() 方法取消任务的执行。
java FutureTask例子
可以给您提供一个简单的 Java FutureTask 的例子:
```
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
public class FutureTaskExample {
public static void main(String[] args) throws InterruptedException, ExecutionException {
Callable<Integer> callable = new Callable<Integer>() {
@Override
public Integer call() throws Exception {
int sum = ;
for (int i = 1; i <= 100; i++) {
sum += i;
}
return sum;
}
};
FutureTask<Integer> futureTask = new FutureTask<>(callable);
Thread thread = new Thread(futureTask);
thread.start();
int result = futureTask.get();
System.out.println("1到100的和为:" + result);
}
}
```
这个例子中,我们使用了 FutureTask 来异步执行一个 Callable 对象,然后通过 get() 方法获取 Callable 的返回值。在这个例子中,Callable 计算了 1 到 100 的和,最后返回这个和,然后我们在主线程中获取这个和并输出。