【问题标题】:Javascript Like "Promise.all" on Java 8 (maybe with lambdas)Javascript 像 Java 8 上的“Promise.all”(可能带有 lambdas)
【发布时间】:2019-06-22 20:24:50
【问题描述】:

我想知道是否有类似于 Java 8(目前在 Android 上)的 JavaScript 的“Promise.all”的东西。我正在尝试在所有回调完成时进行,然后执行第二个进程。

现在我使用的回调是 lambdas 表达式,但我愿意接受有关更改回调方式和所有回调完成时执行的“大回调”的建议。

我使用回调计数器来实现,当回调计数器等于回调长度时,就会调用大回调。但我确信这个解决方案不是正确的。

【问题讨论】:

    标签: javascript java android callback promise


    【解决方案1】:

    Java 8 将其提供为 CompletableFuture.allOf(CompletableFuture...),它模仿 Promise.all;还有CompletableFuture.anyOf(CompletableFuture...)在Javascript中模仿Promise.race

    如果您改用 ListenableFuture,Guava 会以 Futures.allAsList(...) 执行此操作,同时具有可变参数和可迭代重载。

    【讨论】:

    • 请注意,与Promise.all() 不同,allOf() 不返回结果数组 - 您需要保留对原始 Future 对象的引用,并在调用 @ 后对每个对象调用 get() 987654329@ 声明。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    • 2017-11-20
    • 2015-11-19
    • 1970-01-01
    相关资源
    最近更新 更多