我正在考虑将 Rx 引入我的工作场所,但我对它了解得越多,我认为它并没有真正给你带来优势。
我们有很多服务器应用程序,它们在一端接收输入数据并在另一端输出。这对于演员模型和“无限”线程可扩展性来说是完美的,直到现在我已经使用 ConcurrentQueues 来实现消息传递,我认为 Rx 可能是一个更好的功能性替代方案,它可以使并发更加隐式,帮助我移动一些从命令式代码到可观察对象声明的数据流决策。
但是阅读它并尝试它,我认为与使用常规旧线程和 ConcurrentQueues 进行消息传递相比没有太大优势。Rx 给我带来了哪些优势?人们总是说,尽管 .NET 4.5 使很多 Rx 过时(尽管是异步和 Dataflow),但它仍然可以很好地处理事件流。哪些情况会出现事件流,我如何识别它们?