小编use*_*200的帖子

如何使用Reactive Extensions使用最大窗口大小来限制事件?

场景:

我正在构建一个UI应用程序,每隔几毫秒从后端服务获取通知.收到新通知后,我想尽快更新用户界面.

因为我可以在很短的时间内收到大量的通知,而且我总是只关心最新的事件,所以我使用了Reactive Extensions框架的Throttle()方法.这允许我忽略紧跟新通知的通知事件,因此我的UI保持响应.

问题:

假设我将通知事件的事件流限制为50ms,并且后端每隔10ms发送一次通知,Thottle()方法将永远不会返回事件,因为它会一次又一次地重置其滑动窗口.在这里,我需要一些额外的行为来指定类似超时的东西,这样我就可以每秒至少检索一个事件,如果有这么高的事件吞吐量.如何使用Reactive Extensions执行此操作?

c# throttling system.reactive

10
推荐指数
1
解决办法
2786
查看次数

标签 统计

c# ×1

system.reactive ×1

throttling ×1