面试题答案
一键面试CompletableFuture的supplyAsync方法的作用
supplyAsync
方法用于异步执行有返回值的任务。它会在一个默认的线程池中(如果没有指定自定义线程池)异步执行给定的Supplier
函数式接口实现,并返回一个CompletableFuture
对象,通过这个对象可以获取异步任务执行的结果。
代码示例
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
public class CompletableFutureExample {
public static void main(String[] args) throws ExecutionException, InterruptedException {
CompletableFuture<String> future = CompletableFuture.supplyAsync(() -> {
// 模拟一个耗时操作
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
return "异步任务执行结果";
});
// 获取并打印异步任务的结果
String result = future.get();
System.out.println(result);
}
}