1
如果在特定的時間範圍內沒有收到一個值,我想結束基於事件的觀察值。如何結束熱點觀察?
// This will go on forever because it is a hot
// observable based on an event
// If a value has not been produced in, say, 2 seconds
// I would like to stop it and raise an OnCompleted
var observable = Observable.FromEvent(...);
我可以做一個TakeUntil
像這樣,但這將是從訂閱開始的絕對時間段。我想要的是,如果一個值沒有被返回,例如,從前一個值的生成時間開始,那麼停止並提高OnCompleted
事件。
如果觀測值在2秒內沒有產生任何值,那麼也停止並提高OnCompleted
事件。
我該怎麼做,而客戶端代碼不得不保持這個狀態的最後一次產生的時間?