2016-12-30 83 views
0

下面的代码:Rxjava +改造得到致命异常:RxCachedThreadScheduler

Observable.combineLatest(observable1, observable2,observable3, observable4,observable5,new Function5<>()) 

当一个或几夭观测的返回码= 404,我抛出异常

return Observable.error(
        new RxApiException(tHttpResult.getCode(), tHttpResult.getMessage())); 

我会得到

FATAL EXCEPTION : RxCachedThreadScheduler-3 

如何解决这个问题?

回答

0

您需要定义您如何处理错误。如果没有为Observable的使用者设置onError处理程序,则它将转发给执行线程的未捕获异常处理程序。

在android上,异常处理程序在触发时会导致致命异常,关闭应用程序。

要么定义一个应该处理错误的方法,要么使用RxJavaPlugins.registerErrorHandler(...)来定义应该如何为整个应用程序处理未处理的异常。