ConcurrentDictionary<TKey,TValue> コンストラクター

定義

ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化します。

オーバーロード

名前 説明
ConcurrentDictionary<TKey,TValue>()

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、既定のコンカレンシー レベルを持ち、既定の初期容量を持ち、キーの種類に既定の比較子を使用します。

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)

指定したIEnumerable<T>からコピーされた要素を含み、既定のコンカレンシー レベルを持ち、既定の初期容量を持ち、キーの種類に既定の比較子を使用する、ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化します。

ConcurrentDictionary<TKey,TValue>(IEqualityComparer<TKey>)

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、既定のコンカレンシー レベルと容量を持ち、指定した IEqualityComparer<T>を使用します。

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

指定したIEnumerableからコピーされた要素を含むConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、既定のコンカレンシー レベルを持ち、既定の初期容量を持ち、指定したIEqualityComparer<T>を使用します。

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、指定されたコンカレンシー レベルと容量を持ち、キーの種類に既定の比較子を使用します。

ConcurrentDictionary<TKey,TValue>(Int32, IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

指定したIEnumerableからコピーされた要素を含むConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、指定したIEqualityComparer<T>を使用します。

ConcurrentDictionary<TKey,TValue>(Int32, Int32, IEqualityComparer<TKey>)

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、指定したコンカレンシー レベルを持ち、指定した初期容量を持ち、指定した IEqualityComparer<T>を使用します。

ConcurrentDictionary<TKey,TValue>()

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、既定のコンカレンシー レベルを持ち、既定の初期容量を持ち、キーの種類に既定の比較子を使用します。

public:
 ConcurrentDictionary();
public ConcurrentDictionary();
Public Sub New ()

注釈

既定のコンカレンシー レベルは、CPU の数と同じです。 コンカレンシー レベルが高いほど、干渉やブロックなしで、より多くの同時書き込み操作が実行される可能性があります。 コンカレンシー レベルの値が高いほど、すべてのロック (テーブルのサイズ変更、 ToArrayCountなど) を必要とする操作もコストが高くなります。 バケットの初期数を表す既定の容量 (DEFAULT_CAPACITY) は、非常に小さいディクショナリのサイズと、大きなディクショナリを構築するときのサイズ変更の数とのトレードオフです。 また、容量を小さな素数で割り切るべきではありません。 既定の容量は 31 です。

こちらもご覧ください

適用対象

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)

指定したIEnumerable<T>からコピーされた要素を含み、既定のコンカレンシー レベルを持ち、既定の初期容量を持ち、キーの種類に既定の比較子を使用する、ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化します。

public:
 ConcurrentDictionary(System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ collection);
public ConcurrentDictionary(System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (collection As IEnumerable(Of KeyValuePair(Of TKey, TValue)))

パラメーター

collection
IEnumerable<KeyValuePair<TKey,TValue>>

要素が新しいIEnumerable<T>にコピーされるConcurrentDictionary<TKey,TValue>

例外

collection または、そのキーのいずれかが null

collection には、1 つ以上の重複するキーが含まれています。

こちらもご覧ください

適用対象

ConcurrentDictionary<TKey,TValue>(IEqualityComparer<TKey>)

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、既定のコンカレンシー レベルと容量を持ち、指定した IEqualityComparer<T>を使用します。

public:
 ConcurrentDictionary(System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary(System.Collections.Generic.IEqualityComparer<TKey> comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (comparer As IEqualityComparer(Of TKey))

パラメーター

comparer
IEqualityComparer<TKey>

キーを比較するときに使用する等価比較の実装。

例外

comparernullです。

こちらもご覧ください

適用対象

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

指定したIEnumerableからコピーされた要素を含むConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、既定のコンカレンシー レベルを持ち、既定の初期容量を持ち、指定したIEqualityComparer<T>を使用します。

public:
 ConcurrentDictionary(System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ collection, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary(System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection, System.Collections.Generic.IEqualityComparer<TKey> comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (collection As IEnumerable(Of KeyValuePair(Of TKey, TValue)), comparer As IEqualityComparer(Of TKey))

パラメーター

collection
IEnumerable<KeyValuePair<TKey,TValue>>

要素が新しいIEnumerable<T>にコピーされるConcurrentDictionary<TKey,TValue>

comparer
IEqualityComparer<TKey>

キーを比較するときに使用する IEqualityComparer<T> 実装。

例外

collection または comparernull

こちらもご覧ください

適用対象

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、指定されたコンカレンシー レベルと容量を持ち、キーの種類に既定の比較子を使用します。

public:
 ConcurrentDictionary(int concurrencyLevel, int capacity);
public ConcurrentDictionary(int concurrencyLevel, int capacity);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : int * int -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (concurrencyLevel As Integer, capacity As Integer)

パラメーター

concurrencyLevel
Int32

ConcurrentDictionary<TKey,TValue>を同時に更新するスレッドの推定数。既定のコンカレンシー レベルを示す -1.NET 8 以上です。

capacity
Int32

ConcurrentDictionary<TKey,TValue>に含めることができる要素の初期数。

例外

concurrencyLevel が 1 未満です。

-または-

capacity が 0 未満です。

こちらもご覧ください

適用対象

ConcurrentDictionary<TKey,TValue>(Int32, IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

指定したIEnumerableからコピーされた要素を含むConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、指定したIEqualityComparer<T>を使用します。

public:
 ConcurrentDictionary(int concurrencyLevel, System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ collection, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary(int concurrencyLevel, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection, System.Collections.Generic.IEqualityComparer<TKey> comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : int * seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (concurrencyLevel As Integer, collection As IEnumerable(Of KeyValuePair(Of TKey, TValue)), comparer As IEqualityComparer(Of TKey))

パラメーター

concurrencyLevel
Int32

ConcurrentDictionary<TKey,TValue>を同時に更新するスレッドの推定数。既定のコンカレンシー レベルを示す -1.NET 8 以上です。

collection
IEnumerable<KeyValuePair<TKey,TValue>>

要素が新しいIEnumerable<T>にコピーされるConcurrentDictionary<TKey,TValue>

comparer
IEqualityComparer<TKey>

キーを比較するときに使用する IEqualityComparer<T> 実装。

例外

collection または comparernull

concurrencyLevel が 1 未満です。

collection には、1 つ以上の重複するキーが含まれています。

こちらもご覧ください

適用対象

ConcurrentDictionary<TKey,TValue>(Int32, Int32, IEqualityComparer<TKey>)

空の ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化し、指定したコンカレンシー レベルを持ち、指定した初期容量を持ち、指定した IEqualityComparer<T>を使用します。

public:
 ConcurrentDictionary(int concurrencyLevel, int capacity, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary(int concurrencyLevel, int capacity, System.Collections.Generic.IEqualityComparer<TKey> comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : int * int * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (concurrencyLevel As Integer, capacity As Integer, comparer As IEqualityComparer(Of TKey))

パラメーター

concurrencyLevel
Int32

ConcurrentDictionary<TKey,TValue>を同時に更新するスレッドの推定数。既定のコンカレンシー レベルを示す -1.NET 8 以上です。

capacity
Int32

ConcurrentDictionary<TKey,TValue>に含めることができる要素の初期数。

comparer
IEqualityComparer<TKey>

キーを比較するときに使用する IEqualityComparer<T> 実装。

例外

comparernullです。

concurrencyLevel または capacity が 1 未満です。

こちらもご覧ください

適用対象