哈希表有一个syncroot属性,但通用字典没有。如果我的代码是这样的:
lock (hashtable.Syncroot)
{
....
}
如果我删除哈希表并改用通用字典,该如何复制这个功能?
哈希表有一个syncroot属性,但通用字典没有。如果我的代码是这样的:
lock (hashtable.Syncroot)
{
....
}
如果我删除哈希表并改用通用字典,该如何复制这个功能?
// used as you would have used SyncRoot before
object _syncLock = new object();
Dictionary<string, int> numberMapper = new Dictionary<string, int>();
// in some method...
lock (_syncLock)
{
// use the dictionary here.
}
var dictionary = new Dictionary<int, string>();
lock(((ICollection) dictionary).SyncRoot)
{
// ...
}