Java API を知らない .NET 専門家のために要約すると、次のようになります。
Java のConcurrentHashMapには、次のような一般的な Map 変更操作のためのアトミック メソッド (つまり、外部ロックを必要としない) があります。
putIfAbsent(K key, V value)
remove(Object key, Object value)
replace(K key, V value)
また、ロックせずにキーセットを反復処理することもでき (反復の開始時にコピーが取得されます)、get()
操作は通常、ブロックせずに への呼び出しとインターリーブできますput()
(細かい粒度のロック ストライピングIIRCを使用します)。
とにかく、私の質問は次のとおりです。.NET には同等の Dictionary 実装がありますか?
より一般的には、.NET にスレッド セーフなコレクション ライブラリのより一般的なセットがあるかどうか知りたいと思います。または一般的な同時実行ユーティリティ - Doug Leaのjava.util.concurrent
ライブラリに相当します。