timeout用於檢測在給定時間內observables沒有及時響應。若是指定的時間量沒有發出任何項目,則超時會使observables失敗並出現TimeoutException。ios
咱們將從debounce的示例中重用咱們的observable來演示超時。git
輸出:github
只要值不超過200ms,就會輸出。一旦值超過到達值,就會推送錯誤。函數
您能夠提供後備observable而不是失敗。發生超時時,生成的observable將切換到備胎。從那時起,原始的可觀察者將被忽略,即便它恢復了。3d
輸出:blog
您還能夠指定每一個項目的超時窗口。在這種狀況下,您提供了一個爲每一個值建立一個observable的函數。當observable終止時,這是超時的信號。若是在此以前沒有發出任何值,則會觸發超時。it
如下是使用此重載實現的一個示例:io
輸出:ast
一樣,您能夠提供observable的後備。輸出與前兩個示例相同。im
原文:https://github.com/Froussios/Intro-To-RxJava/blob/master/Part%203%20-%20Taming%20the%20sequence/5.%20Time-shifted%20sequences.md
下節繼續!
有什麼討論的內容,能夠加我公衆號: