开启异步任务

runAsync

从公共的 commonPool 线程池中获取一个字线程,执行指定的任务,并且该任务方法结束后,没有返回值。

CompletableFuture<Void> cf = CompletableFuture
    .runAsync(() -> System.out.println("模拟获取远程信息并输出到控制台"));

// 调用 join 方法进行等待,获取执行结果
cf.join();

supplyAsync

从 commonPool 线程池中获取一个子线程,执行指定的函数。并且该任务方法执行结束后,返回指定类型的返回值。

CompletableFuture<String> cf = CompletableFuture.supplyAsync(() -> {
    System.out.println("模拟获取远程信息");
    return "远程信息";
});
// 调用 join 方法进行等待,获取执行结果
String result = cf.join();
System.out.println(result);

最后更新于

这有帮助吗?