IObservable.Create的subscribe参数实际返回的Action是什么?

时间:2010-12-22 18:34:59

标签: c# system.reactive

IObservable.Create的方法定义是:

public static IObservable<TSource> Create<TSource>(
    Func<IObserver<TSource>, Action> subscribe
)

我知道一旦observable被订阅就会调用该函数,然后我可以在观察者上调用OnNext,OnError和OnComplete。但是为什么我需要从subscibe参数返回一个Action以及何时实际调用它?

3 个答案:

答案 0 :(得分:4)

从观察者取消订阅时调用它。 Source

答案 1 :(得分:1)

在处理订阅时调用它。它适合您,以便您可以处置已分配的任何资源。

答案 2 :(得分:1)

根据Kent的回答,调用Create相当于调用CreateWithDisposable并将操作传递给Disposable.Create()