それとも、常に他のロック オブジェクトを作成する必要がありますか?
7377 次
2 に答える
14
はい、それを IDictionary にキャストしてロックし.SyncRoot
ます:
Generic.Dictionary<int, int> dic = new Generic.Dictionary<int, int>();
lock (((IDictionary)dic).SyncRoot)
{
// code
}
この情報源に感謝します。
もちろん、他の人が示唆しているように、スレッドセーフな辞書もいいでしょう。
于 2009-01-04T01:54:43.843 に答える
1
任意のオブジェクトをロックできます (値型を除く)。ただし、.SyncRoot オブジェクトをロックすることをお勧めします。
于 2009-01-04T01:55:42.907 に答える