CompletableFuture异步执行

CompletableFuture异步执行

概念

Java 8引入了一个强大的类:CompletableFuture,它在java.util.concurrent包中。CompletableFuture是Future的增强版本,主要用于实现异步编程。

首先,我们要理解什么是Future。Future是Java5引入的一个接口,代表一个异步计算的结果。你可以启动一个计算,获取一个Future对象,然后在计算完成后,通过这个Future对象来获取结果。但Future的功能有限,就是它缺乏机制处理Future的完成事件,我们只能通过Future.get()方法阻塞当前线程来获取结果,这是非常低效的。简单来说,就是使用Future的时候,当执行异步线程的时候,主线程会发生阻塞状态,不能干别的事情。而CompletableFuture是Future的增强版本,就是的当异步线程没有执行完的时候,主线程仍然可以执行其它东西。

使用案例

如下图:
CompletableFuture异步执行_第1张图片
代码如下:

public class Test1 {
   

你可能感兴趣的:(读书笔记,java,开发语言)