2022-02-18
异步计算之CompletableFuture
java 评论:0 浏览:123

转载请注明出处:https://oldnoop.tech/c/206.html

创建任务类

为了演示一下CompletableFuture的功能,先创建一个任务类,

这个任务类包含了任务id,任务的执行结果集合data,

还定义了3个不同的阶段子任务,通过方法doTask,接收Supplier的接口,将具体阶段任务参数化

以及一些工具方法,这些工具方法主要是为了输出调试信息

编写异步计算的代码

首先, 创建单独的线程池执行异步任务

然后,为3个阶段子任务,分别定义映射函数,以便在流的操作中使用

编排多个阶段子任务,并在执行子任务的前后插入一些其他的行为

最后将多线程异步执行的结果, 使用CompletableFuture的join方法进行合并,

join方法会调用waitingGet方法,根据方法名也能推测 这里是真正阻塞等待异步计算结果的

 



  • 转载请注明出处:https://oldnoop.tech/c/206.html

Copyright © 2018 oldnoop.tech. All Rights Reserved

鄂ICP备2023022735号-1