Events IObservable与普通事件,或者我为什么要使用IObservable?

Events IObservable与普通事件,或者我为什么要使用IObservable?,events,design-patterns,.net-4.0,system.reactive,Events,Design Patterns,.net 4.0,System.reactive,微软在.NETFramework4中引入了BCL,我想,“太好了,最后,我必须使用它!”所以我深入阅读了文章和文档,甚至实现了这个模式 这样做之后,我意识到基本实现实际上会将所有T事件发送给所有订阅者,而不进行任何过滤;i、 e.普通广播。我在某处读到,可观察到的模式是用于普通广播的。我觉得这不是真的,我错过了一些东西 我的问题: 如果我添加一个过滤机制,那么使用可观察模式和仅使用普通CLR事件之间有什么区别 何时应该使用此模式,何时应该选择使用普通CLR事件 可观察模式的主要优势是什么 可观察

微软在.NETFramework4中引入了BCL,我想,“太好了,最后,我必须使用它!”所以我深入阅读了文章和文档,甚至实现了这个模式

这样做之后,我意识到基本实现实际上会将所有
T
事件发送给所有订阅者,而不进行任何过滤;i、 e.普通广播。我在某处读到,可观察到的模式是用于普通广播的。我觉得这不是真的,我错过了一些东西

我的问题:

  • 如果我添加一个过滤机制,那么使用可观察模式和仅使用普通CLR事件之间有什么区别

  • 何时应该使用此模式,何时应该选择使用普通CLR事件

  • 可观察模式的主要优势是什么


  • 可观察性是系统的基石。它们提供了几乎所有您需要的实现和操作符。
    IObservable
    Rx
    背后的理念不仅仅是“处理”事件,而是启用“LINQ到事件”。因此,您可以轻松地编写“事件流”,与常规事件处理相比,它为您提供了大量的功能


    注意,
    IObservable
    的示例MSDN实现是:;doc团队已收到通知。

    您好,谢谢您的回复,请您详细说明“启用”LINQ to Events。这样您就可以轻松编写“事件流”或给出一个示例了?adiel。有几种LINQ to Events类型的示例。还有著名的“拖放”“+0我打赌你对#2有足够的洞察力,你没有提供:P@RubenBartelink:你看了链接了吗?其中描述了一个具体问题,此后Rx团队发布了该问题。感谢您的回复。老实说,我也没有跟着。现在我有了(我觉得它没有解决我所问问题的方面),我有了。