Appearance
07_Callable
Callable接口类似于Runnable,但是Runnable不会返回结果,并且无法抛出返回结果的异常,而Callable可以。Callable接口的call()方法可以返回一个结果,这个结果可以在FutureTask中被获取。Callable接口的使用方法:
Callable接口的使用方法:
java
package io.alex.concurrent;
public class CallableExample {
public static void main(String[] args) {
// 创建一个Callable对象
Callable<Integer> callable = () -> {
System.out.println("Callable is running...");
return 1;
};
// 创建一个FutureTask对象
FutureTask<Integer> futureTask = new FutureTask<>(callable);
// 创建一个Thread对象
Thread thread = new Thread(futureTask);
// 启动线程
thread.start();
// 获取异步计算的结果
Integer result = futureTask.get();
System.out.println("result: " + result);
}
}