- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我正在阅读关于 CompletableFuture
的文档,thenAccept()
的描述是
Returns a new CompletionStage that, when this stage completes normally, is executed with this stage's result as the argument to the supplied action.
对于 thenApply()
是
Returns a new CompletionStage that, when this stage completes normally, is executed with this stage's result as the argument to the supplied function.```
谁能通过一些简单的例子来解释两者之间的区别?
最佳答案
您需要查看完整的方法签名:
CompletableFuture<Void> thenAccept(Consumer<? super T> action)
<U> CompletableFuture<U> thenApply(Function<? super T,? extends U> fn)
thenAccept
接受一个 Consumer
并返回一个 T=Void
CF,即不带值的CF,只有完成状态。
thenApply
接受一个 Function
并返回一个带有函数返回值的 CF。
关于java - thenAccept 和 thenApply 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45174233/
我想调用CompletableFuture.supplyAsync()将阻塞任务委托(delegate)给另一个线程。一旦该任务完成,我希望 CompletableFuture.thenAccept
我想调用 CompletableFuture.supplyAsync() 将阻塞任务委托(delegate)给另一个线程。一旦该任务完成,我希望 CompletableFuture.thenAccep
我正在尝试从使用 CompletableFuture 的方法执行异步调用.完成该任务后,我尝试打印对象 DummyObject 的值,这些值对于调用异步调用的方法是本地的。 我想知道它是如何工作的?线
与某些博客中所述(例如 I can't emphasize this enough: thenAccept()/thenRun() methods do not block )不同,Completab
我正在做一个有很多 CompletableFuture.completedFuture ... thenAccept 代码的项目,例如 public CompletableFuture cal
我正在开发一个与其他网络应用程序通信的网络应用程序。有时,我的系统会向其他系统发送 HTTP 请求作为通知。由于他们的响应对我来说不是必需的,我使用 Java 8 CompletableFuture
我正在尝试从我的 CompletableFuture 中返回一个列表,如下所示: public List get() { CompletableFuture> providersRespons
我正在阅读关于 CompletableFuture 的文档,thenAccept() 的描述是 Returns a new CompletionStage that, when this stage
所以我有一个返回 CompletableFuture 的方法。在返回之前,此方法添加一个带有 thenAccept 的 block ,该 block 在 CompletableFuture 完成后执行
我在 CompletableFuture 的 supplyAsync() 中处理长时间运行的操作,并将结果放入 thenAccept()。有时 thenAccept() 在主线程上执行,但有时它在工作
如何在单元测试中避免手动休眠。假设在下面的代码中,Process 和 notify 处理大约需要 5 秒。所以为了完成处理,我增加了 5 秒的 sleep 时间。 public class Class
如何在单元测试中避免手动休眠。假设在下面的代码中,Process 和 notify 处理大约需要 5 秒。所以为了完成处理,我增加了 5 秒的 sleep 时间。 public class Class
我是一名优秀的程序员,十分优秀!