0

我阅读了 Reactive Extension 的代码,然后我找到了这段代码

private readonly IObservable<TSource> _source;
protected override IDisposable Run(IObserver<TResult> observer, IDisposable cancel, Action<IDisposable> setSink)
{
    var sink = new _(this, observer, cancel);
    setSink(sink);
    return _source.SubscribeSafe(sink);
}

我发现方法SubscribeSafe(sink)在类ObservableExtensions中,而类没有实现接口IObservable。为什么参数_source有成员函数 SubscribeSafe()?

4

1 回答 1

2

因为里面的方法ObservableExtensions是扩展方法。您可以在此处阅读有关它们的信息。

于 2015-01-19T12:17:53.390 回答