Reactive Extensions(Rx)是否会取代任务并行库?

Mar*_*ark 8 .net parallel-processing system.reactive

仔细阅读了Rx.NET样本后,我对于Reactive Extensions的概念和实现有多么精彩.它似乎为开发人员提供了一种更易于维护的模式,用于实现.NET 4.0的任务并行库提供的相同类型的多线程并行编码.

Rx.NET会取代TPL吗?应该是?

Ric*_*lay 15

简而言之,没有.

任务并行库(TPL)提供工作分配(并发),以及大型工作的并发优化(并行性))同时抽象实际的工作分配机制(线程).

C#添加了async关键字以帮助管理异步语言级别的.Rx已更新为支持此功能.

Rx提供了一个使用标准运算符组合和管理异步数据流的框架.虽然Rx使用调度程序有一些交叉,但这只是一种抽象.实际上,推荐的并行调度程序是TaskScheduler使用TPL的.

另见Jeffrey van Gogh对Rx论坛上完全相反的问题的回应.

此外,这个问题可能有用.

  • 你必须看到讽刺性的评论"任务并行库不是关于并行性";-) (3认同)