package juc.day03;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
public class ComplateableFutureTest {
public static void main(String[] args) throws ExecutionException, InterruptedException {
//异步调用,没有返回值
CompletableFuture<Void> future = CompletableFuture.runAsync(() -> System.out.println("没有返回值"));
System.out.println(future.get());//打印null
//传供给型接口,异步回调,有返回值
CompletableFuture<String> supplyAsync = CompletableFuture.supplyAsync(() ->{
// int a = 1/0;
return "1024";
});
System.out.println(supplyAsync.whenComplete((t, u) -> {
System.out.println("----t\t" + t);
System.out.println("----u\t" + u);
}).exceptionally(f -> {
System.out.println("-----f\t" + f.getMessage());
return "4444";
}).get());
}
}
异步回调之ComplateableFuture
最新推荐文章于 2024-05-08 05:00:00 发布