public final class PromiseCombiner
extends java.lang.Object
一个承诺组合器监视一些离散期货的结果,然后在所有的合并期货结束时通知最终的总承诺。 当且仅当所有的合并期货都成功时,总承诺才会成功。 如果任何一个合并期货失败,总承诺将失败。 总承诺的失败原因将是失败的合并期货失败; 如果多于一个的合并期货失败,那么确切地将哪个失败原因分配给合同承诺是未定义的。
呼叫者可以通过add(Future)
和addAll(Future[])
方法来组合具有任意数量期货的承诺组合器。 当所有合并的期货都被添加后,主叫方必须提供一个总承诺,当所有合并的承诺都通过finish(Promise)
方法完成时通知。
Constructor and Description |
---|
PromiseCombiner() |
@Deprecated public void add(Promise promise)
add(Future)
取代 。
finish(Promise)
方法添加总承诺。
promise
- 承诺添加到此承诺组合器
public void add(Future future)
finish(Promise)
方法添加总承诺。
future
- 未来添加到此承诺组合器
@Deprecated public void addAll(Promise... promises)
addAll(Future[])
取代
finish(Promise)
方法添加总承诺。
promises
- 承诺将添加到此承诺组合器
public void addAll(Future... futures)
finish(Promise)
方法添加总承诺。
futures
- 这个承诺组合器的未来
public void finish(Promise<java.lang.Void> aggregatePromise)
设置所有合并期货完成时的通知承诺。 如果所有的合并期货都成功了,那么总的承诺就会成功。 如果一个或多个合并期货失败,那么合计承诺将失败,导致其中一个失败的期货。 如果多个合并未来失败,那么确切地将哪个失败分配给合并承诺是未定义的。
在调用此方法后,不能通过add(Future)
或addAll(Future[])
方法添加更多期货。
aggregatePromise
- 所有合并期货完成时的通知承诺
Copyright © 2008–2018 The Netty Project. All rights reserved.