F# IObservable.Add与IObservable.Subscribe
这两种方法的区别是什么?每种方法的最佳情况是什么?我知道它们都能附加一个函数来处理IObservable的排放,但我真的不理解除此之外的区别 编辑 对不起,我应该指定的。IObservable.Add的定义如下:F# IObservable.Add与IObservable.Subscribe,f#,system.reactive,reactive-programming,observable,subscribe,F#,System.reactive,Reactive Programming,Observable,Subscribe,这两种方法的区别是什么?每种方法的最佳情况是什么?我知道它们都能附加一个函数来处理IObservable的排放,但我真的不理解除此之外的区别 编辑 对不起,我应该指定的。IObservable.Add的定义如下: 也许这只是一件小事。顺便说一下,我用的是F#。不是C#。没有扩展方法IObservable。在Rx库中添加,并且该方法不是接口的一部分-因此我不确定您从何处获得该方法IObservable.Subscribe是观察者订阅可观察流中通知的方式 您可以在此处看到这些接口的完整定义(属于4
也许这只是一件小事。顺便说一下,我用的是F#。不是C#。没有扩展方法
IObservable。在Rx库中添加,并且该方法不是接口的一部分-因此我不确定您从何处获得该方法<代码>IObservable.Subscribe
是观察者订阅可观察流中通知的方式
您可以在此处看到这些接口的完整定义(属于4.0版的.NET基类库的一部分):
您可能希望查看msdn页面上的Rx资源,尤其是视频,因为您似乎正处于Rx旅程的开始
编辑
鉴于您正在使用F#-yes的说明,似乎Add
是F#特定的,以及您所指的Subscribe
扩展方法;我从未在C#中使用过它。这两种F#方法似乎只对OnNext
通知做出反应,因此看起来相当奇怪。如果你想使用可观测数据,我会避开这些方法并坚持使用。(Rx可从F#)使用。那是什么添加
-方法,它的定义在哪里?我打赌订阅
可以让你取消订阅,而添加
不能,因此,Add
只有在您忽略订阅的结果时才有用。@ildjarn确实是在描述中:将侦听器函数永久连接到可观察对象我想可能您误解了这个问题。OP指的是Control.Observable
F#模块,而不是ioobservable
或Rx.NET。答案解释得很好,只是针对错误的东西,依我看。