Silverlight 4中提供哪些线程安全的集合类?

Opp*_*nal 9 silverlight thread-safety concurrent-collections

我正在开发一个应用程序框架,Silverlight将在客户端使用,而.NET 4则在服务器端使用.在内部,框架具有字典和队列数据结构,其中多个线程将同时访问集合.

在服务器端,我想利用System.Collections.Concurrent命名空间中可用的ConcurrentDictionaryConcurrentQueue类.但是,这些类未在Silverlight 4中实现.

我正在考虑的两种方法是:

  1. 反编译ConcurrentDictionary和ConcurrentQueue类并在Silverlight类库中实现它们.这些将使用System.Collections.Concurrent命名空间作用域.
  2. 在共享库中实现我需要的自定义线程安全集合类(或找到可靠的Silverlight线程安全集合实现),可以在服务器端和客户端使用.

第一种方法允许我只实现我需要的Silverlight数据结构,但我担心在我的Silverlight实现和.NET 4中实现的并发集合类之间引入差异.

第二种方法将在客户端和服务器端提供一致的并发集合实现,但感觉就像我将重新发明轮子.

在Silverlight 中实现ConcurrentDictionaryConcurrentQueue类似乎并不困难,但是Silverlight已经有一个很好的线程安全集合类库?