【发布时间】:2010-11-05 10:53:24
【问题描述】:
在关注samples of Rx.NET 之后,我对反应式扩展的概念和实现多么出色感到震惊。它似乎为开发人员提供了一种更易于维护的模式,以实现与 .NET 4.0 的任务并行库提供的相同类型的多线程并行编码。
Rx.NET 会取代 TPL 吗?应该吗?
【问题讨论】:
标签: .net parallel-processing system.reactive
在关注samples of Rx.NET 之后,我对反应式扩展的概念和实现多么出色感到震惊。它似乎为开发人员提供了一种更易于维护的模式,以实现与 .NET 4.0 的任务并行库提供的相同类型的多线程并行编码。
Rx.NET 会取代 TPL 吗?应该吗?
【问题讨论】:
标签: .net parallel-processing system.reactive
简而言之,没有。
Task Parallel Library (TPL) 提供了工作分配(concurrency),以及更大工作的并发优化(parallelism),同时抽象了实际机制工作分配(线程)。
C# 添加了async 关键字以帮助从语言级别管理异步。 Rx 已更新以支持此功能。
Rx 提供了一个框架来使用标准运算符组合和管理异步数据流。虽然 Rx 对调度程序的使用存在一些交叉,但这只是一个抽象。事实上,推荐的并行调度程序是TaskScheduler,它使用了 TPL。
另请参阅Jeffrey van Gogh's response Rx 论坛上完全相反的问题。
另外,this question 可能有用。
【讨论】: