質問

または、他のロックオブジェクトを常に作成する必要がありますか?

役に立ちましたか?

解決

はい、IDictionaryにキャストして .SyncRoot をロックします:

Generic.Dictionary<int, int> dic = new Generic.Dictionary<int, int>();

lock (((IDictionary)dic).SyncRoot)
{
    // code
}

これに感謝ソース。情報

もちろん、他の人が示唆しているように、スレッドセーフな辞書もいいでしょう。

他のヒント

任意のオブジェクトをロックできます(値タイプを除く)。 .SyncRootオブジェクトをロックするのは推奨です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top