2016-12-30 145 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(...)來定義應該如何爲整個應用程序處理未處理的異常。