这个问题几乎说明了一切。
有谁知道从.NET 3.5中的System.Collections.Concurrent
命名空间获取集合类的任何方法?
我想我要问的是,是否有人经历过将这些类移植到自己的DLL上的麻烦,这些DLL可以从.NET 3.5访问。
答案 0 :(得分:5)
更新:遗憾的是,似乎不再为.NET 3.5提供反应式扩展库了。但是,如果您可以找到该库的旧版本,它肯定包含.NET 3.5的并发集合类的反向移植。我知道因为我在以前的公司广泛使用过。
我偶然发现了这个。
事实证明,这些集合一直可用于Microsoft's Reactive Extensions (Rx) library,可用于.NET 3.5,实际上我已经使用一段时间了(只是从未实现过)他们在那里。)
System.Collections.Concurrent
命名空间由System.Threading.dll提供。
只是在这里张贴这个为后人。
答案 1 :(得分:3)
不,它们属于System.dll
的4.0版本。因此,尝试将其拉入3.5应用程序是行不通的。
答案 2 :(得分:3)
我使用了Task Parallel Library for .NET 3.5。效果很好。
该套餐包括:
执行异步操作的任务。
并发集合,例如ConcurrentStack,ConcurentQueue ad ConcurrentDictionary。
用于编写并行查询的PLINQ。
其他线程操作,如Barrier,SpinLock和SpinWait。