如果 mono.zip 中的一个单声道抛出异常,是否可以避免所有其他单声道立即停止?我希望它们正常结束,也许可以通过“.doOnError”或“.continueOnError”之类的方式处理错误的。这是一条路吗?
问候 贝尔纳多
最佳答案
是的,这是可能的。您可以使用 Mono.zipDelayError
。正如您从该方法的名称可以理解的那样,它延迟了来自 Monos 的错误。如果多个 Monos 出错,则合并它们的异常。
如果您无论如何都必须获得组合结果,zipDelayError
不是解决方案。使用 zip
运算符,并使用诸如 onErrorResume
或 retry
之类的后备运算符处理压缩 Mono 或任何上游的错误情况。
关于project-reactor - 避免异常导致立即停止 Mono.zip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56202864/