.Net Reactive Extensions Framework(Rx)是否考虑了拓扑顺序?

时间:2014-11-21 15:18:17

标签: c# .net system.reactive reactive-programming

.Net Reactive Extensions Framework是否以拓扑顺序传播通知以最小化更新量?

像Scala Rx一样:Does .Net Reactive Extensions (Rx) ta

2 个答案:

答案 0 :(得分:1)

.NET Rx在实现FRP时使用了几种语义。 关键点是可观察量和用户上下文,尤其是订户使用的调度器。

TL; DR - .NET RX在调用通知时不使用拓扑顺序。

答案很长:子订阅者按订阅顺序调用。在使用并发感知调度程序的情况下,您可以使用方法ObserveOn / SubscribeOn(更详细explanation)来实现并行调用。

修改(感谢@DaveSexton):

  

请注意,ObserveOn和SubscribeOn都不能实现“并行”   通知(除非您在两者上比较查询的片段   运营商的两侧)。请注意,ObserveOn和SubscribeOn都不是   实现“并行”通知(除非您正在比较   对运营商双方的查询)。 Rx has a strict contract   (§4.2)防止a内的重叠(并发)通知   单一订阅,以及热门观察一般的合同   也适用于订阅。

答案 1 :(得分:0)

Storm.Net(简单的拓扑顺序反应模型),他试图提供一种数据模型,该数据模型以拓扑顺序传播更新。