Rxjava是一種Java語言實現的響應式編程,是創建基於事件的異步程序,是以數據流爲核心,處理數據的輸入,處理以及輸出的。本節將要分享RxJava2 一些異常處理方面的經驗:
- 當出現異常時,通過 onErrorReturn* 轉換成一個正常值返回
- 當出現異常時,通過 onErrorResumeNext 自定義一個Publisher返回,意味着可以轉換一個異常類型;
- 異常可以被轉換,但源數據發射終止
- Flowable、map拋出異常,但數據繼續發射
- 最好不要顯式catch 編譯異常,RxJava2 已經支持所有函數接口拋出Exception
- 需要出錯重試, RxJava2 提供了retry以及相關的多個操作,提供出錯後重新發射數據功能
上面總結了RxJava2 異常上的一些經驗,你的代碼都是這樣用的嗎