我已可觀察到的,從很多渠道獲得項目:RxJava 2.重試與延遲,同時繼續是不同的其他項目
Source { List<Item> data }
來源和項目之間的關係是多到許多和不同來源項目可能會重複自己。項目是應該上傳到服務器的實體,服務器不接受重複項目。爲了達到這個目的,我將資源合併到他們的ID中,然後將唯一的項目上傳到服務器。如下圖所示:
Observable.merge(source1(), source2(), source3())
.flatMapIterable(sources -> sources)
.flatMapIterable(source::getItems)
.distinct(item -> item.getId())
.flatMapCompletabale(item -> uploadItem(item))
項目上載能發出一些錯誤,並就其中一些我應該重試後再次上傳項目,並進行其他項目,而「失敗」一個正在等待它重試。
如何推遲重試上傳「失敗」的項目,並繼續其他項目,而這一個嘗試嘗試?
提前致謝!
您好!謝謝您的回答!你能否也請說我如何添加重試次數?像5秒延遲重試3次。 –
我參考的博客提供了示例代碼來做到這一點。 –