CompletableFuture学习笔记
maiaimei 2023/10/11 Java
CompletableFuture (opens new window):JDK8引入的异步任务编排的类。
# 开启异步任务
runAsync:无返回值
supplyAsync:有返回值
# 异步任务回调
thenApply:有参数有返回值
thenAccept:有参数无返回值
thenRun:无参数无返回值
thenXxx:不开启新线程,thenXxxAsync:可能开启新线程且可以指定自定义线程池
# 异步任务编排
thenCompose:编排两个有依赖关系的异步任务,用来连接两个有依赖关系的异步任务,结果由第二个异步任务返回。
thenCombine:编排两个非依赖关系的异步任务
allOf:合并多个异步任务,有多个需要独立并行运行的任务,并在这些任务都完成之后执行一些操作
anyOf:合并多个异步任务,有多个需要独立并行运行的任务,任何一个任务完成之后执行一些操作
# 异步任务交互
异步任务交互指将异步任务获取结果的速度相比较,按一定的规则(先到先用)进行下一步处理。
# 异步任务异常处理
exceptionally:可以理解为 try-catch 的 catch
handle:可以理解为 try-catch-finally 的 finally