2

我的问题很简单。经过大量的谷歌搜索后,我了解到我可以在.NET 3.5项目中使用ConcurrentDictionary ,使用其安装目录中的Reactive ExtensionsSystem.Threading.dll版本。首先,没有 System.Threading.dll,Reactive Extensions .NET 3.5 子目录中只有 System.Reactive.Windows.Threading。添加对 System.Reactive 或 System.Reactive.Windows.Threading 或提到的 .NET 3.5 中的任何其他的引用不会给我 ConcurrentDictionary 类,也不会给我 System.Collections.Concurrent 命名空间。我已经下载了旧版本的 Reactive Extensions SDK 并且我找到了我一直在寻找的东西,但我的问题是:有人知道在 Reactive Extensions 的实际版本中 ConcurrentDictionary backport 发生了什么,有人知道它在哪里或为什么失踪。我无法找到合理的答案或任何答案。

4

1 回答 1

7

我们不再为 .NET 3.5 提供带有 Rx 的 TPL 的后向端口。如果您想在并发领域使用 TPL 和相关创新,请开始使用 .NET 4(或更高版本)。Rx 本身不需要 TPL 功能,因此我们没有强烈需要随身携带 TPL。

在与保持这样的反向移植相关的可支持性、维护和质量方面存在太多复杂性。例如,TPL 在旧 CLR 版本上的性能特征从未在几年前 TPL 的初始 CTP 之外进行过测试。

于 2012-01-18T01:43:26.460 回答