我有以下類型...獲取下一個事件序列中每秒有反應的擴展
public class NewsFeed
{
public event EventHandler<NewsItemEventArgs> NewItem;
.....
}
public class NewsItemEventArgs : EventArgs
{
public NewsItem Item;
public NewsItemEventArgs(NewsItem newsItem)
{
Item = newsItem;
}
}
public class NewsItem
{
public int Id { get; set; }
public string Title { get; set; }
public string Body { get; set; }
}
新聞推送的的newitem事件觸發型NewsItemEventArgs的EventArgs的事件。在我的系統中,事件以突發形式發佈,例如在1秒鐘的小窗口中顯示10個NewsItems,然後在60秒內沒有其他新聞報道。我想用RX平滑這些爆發,所以我的UI新聞故事「出現」以更常規的時間間隔5秒到達。
我知道我需要創建一個可觀察下面
_source = Observable.FromEventPattern<NewsItemEventArgs>(
h => _newsFeed.NewItem += h,
h => _newsFeed.NewItem -= h);
有點像,但我不知道如何變換和訂閱觀察到這樣,我得到滴喂的事件,而不是他們在未來上述爆發。
任何想法?
如果觀察到的定時器運行提前源這是行不通的。如果確實如此,那麼當信息源將它們推出時,這些值將立即出現。 – Enigmativity
如果計時器通知和源通知的數量不匹配,則會發生事件積壓。 – Asti