阅读字典的msdn 文档时说:“这种类型的公共静态(在 Visual Basic 中共享)成员是线程安全的。不保证任何实例成员都是线程安全的。”
这意味着使用这样的字典:
static object syncObject = new object();
static Dictionary<string,MyObject> mydictionary= new Dictionary<string, MyObject>();
不需要做类似下面的代码的事情吗?
lock (syncObject)
{
context = new TDataContext();
mydictionary.Add("key", myObject);
}