combineLatest 的个别失败会怎样?

What happens to individual failures with combineLatest?

如果我有两个 SignalProducers(实际上它们是 API 服务请求,所以它们只发送 'next' 一次),并将它们与 combineLatest 组合(因为我想在两者完成后关闭加载微调器),如果其中一个失败了怎么办?或者都失败了?

'failed' 是否在组合信号上被调用(一次或两次?)?

如果一个失败另一个成功,'next'是否会在组合信号上被调用?

任何一个信号的失败都会导致整个组合信号出错并停止订阅。

如果一个信号发送其第一个下一个值,而另一个信号发送一个错误作为其第一个值,则下一个信号将丢失,combineLatest:仅在所有信号发送其第一个下一个值后才被调用。

subscribeError: 只调用一次。错误以单子方式工作,它们在链上冒泡并停止整个信号。

如果你想颠覆这个,那么你可以使用catch:catchTo:retry方法来处理错误。

(很抱歉谈论 Objective-C 方法,我不知道 Swift 语法)。