从错误中恢复的技术
- 吞掉这个错误然后发射默认值
- 吞掉这个错误,在一些回退间隔后重启这个Observable
RxJava特有的异常
CompositeException
- 表示发生了多个异常。你可以使用异常的
getExceptions()
方法获取单独的异常。 MissingBackpressureException
- 表示一个订阅者或者操作符试图对一个不支持反压操作的Observable应用该操作。可以参考 [[Backpressure]] 查找针对没有实现反压操作的Observable的解决办法。
OnErrorFailedException
- 表示Observable尝试调用观察者的 方法,但是那个方法自己抛出了异常。
OnErrorNotImplementedException
- 表示一个Observable尝试调用它的观察者的
onError()
方法,但是那个方法不存在。有多种方法可以消除这个错误:可以调整Observable使它不会到达这个错误条件,也可以在观察者中实现一个onError
处理器, 或者使用其它的操作符在错误到达之前拦截这个onError
通知。 OnErrorThrowable
- 观察者们可以用这种形式传递异常给它们的观察者们的
onError()
方法。相比标准的,这种Throwable包含更多的信息:错误本身和在错误发生时Observable的内部状态。