我正在研究.net framework 2.0,我需要一个Key-Value对存储在内存中。我有两个线程,一个继续读取内存,另一个更改内存。 2.0中的ConcurrentDictionary有没有相同的方法?或者任何其他方式来实现此功能?
答案 0 :(得分:3)
在C#2.0中,您必须通过实现锁定手动执行此操作。您需要创建一个单独的锁对象,在访问字典之前,您必须锁定该对象。
private readonly object lockObject = new object();
private Dictionary<TKey, TValue> d = new Dictionary<TKey, TValue>();
lock (lockObject)
{
d.Add(key, value);
}
但是,如果您有兴趣转向最新的框架4.5,则可以使用ConcurrentDictionary