如果我可以访问一个我知道只能返回一件物品的IObservable,那么这项工作是否可行,这是最佳的使用方式吗?

IDisposable disposable = null;
disposable = myObservable.Subscribe(x =>
  {
     DoThingWithItem(x);
     if (disposable != null)
     {
       disposable.Dispose();
     }
  });

最佳答案

免责声明:我还在学习Rx。因此,我并不是真正的专家,但我相信Subscribe返回的可处理对象只会取消订阅。同样,如果源完成(例如您的情况),则退订会自动完成。因此,我认为Dispose存在冗余,可以安全删除。

有关更多信息,请参见question的答案。

关于c# - 可观察的响应式(Reactive)订阅处置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7703366/

10-10 21:55