java - RxJava 平面图 : How to skip errors?

标签 java rx-java

在链 obs1.flatmap(x -> obs2()).subscribe(sub) 如果 obs2 产生错误,它会立即调用 onErrorsub 上。这是记录在案的:

Note that if any of the individual Observables mapped to the items from the source Observable by flatMap aborts by invoking onError, the Observable produced by flatMap will itself immediately abort and invoke onError.

但是是否可以忽略 obs2 错误并使 obs1 继续发射?

最佳答案

Rx 提供了一些操作符来处理错误。只需从 obs2 创建第三个 Observable,它不会传播错误。

Observable<YourType> obs3 = obs2.onErrorResumeNext(Observable.<YourType>empty());
obs1.flatmap(x -> obs3)

关于java - RxJava 平面图 : How to skip errors?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42161293/

相关文章:

java - 一个类有没有可能实现两个接口(interface),每个接口(interface)都包含一个具有相同方法头的方法?

java - 加载依赖于内部类的外部类

java - 从文本文件中检索字符串数据并将其存储到对象中

android - 处理 Retrofit 2 RX 中的错误

java-8 - 仅返回从 Observable 发出的项目

android - RxJava - 运算符(operator)是任务还是整个链是任务?

java - java中解析字符串的正则表达式

java - 需要有关 HIbernate 计数查询的帮助

rx-java - 多个可观察量链接在一起以完成

android - 函数不在后台线程上执行