1

为什么 Observable.FromEventPattern 采用调度程序?

IObservable<EventPattern<TEventArgs>> FromEventPattern<TEventArgs>(Action<EventHandler<TEventArgs>> addHandler, Action<EventHandler<TEventArgs>> removeHandler, IScheduler scheduler)

我可以理解为什么像 Throttle 和 Delay 这样的基于时间的运算符会使用调度程序。但是,FromEventPattern 具有与之关联的“没有时间概念”。

Observable.FromEventPattern 如何使用调度器?

4

1 回答 1

2

事件在特定的调度程序上传递。例如,您可能希望在线程池而不是 UI 线程上传递事件。你可以使用

调度程序.Default

然后您的事件的任何下游处理都不会影响 UI 渲染。当然,您随后需要将结果编组回 UI 调度程序。对于此开关,您可以使用

观察OnDispatcher()

方法将后续处理放回 UI 线程。

于 2013-08-05T09:00:37.877 回答