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

定義

System.Collections.Concurrent.ConcurrentDictionary\`2 クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class.

オーバーロード

ConcurrentDictionary<TKey,TValue>()

空で、既定のコンカレンシー レベルと既定の初期量を備え、キーの型の既定の比較子を使用する、ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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

指定した ConcurrentDictionary<TKey,TValue> からコピーされた要素を格納し、既定のコンカレンシー レベルと既定の初期量を備え、キーの型の既定の比較子を使用する、IEnumerable<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable<T>, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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

空で、既定のコンカレンシー レベルと容量を備え、指定した ConcurrentDictionary<TKey,TValue> を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level and capacity, and uses the specified IEqualityComparer<T>.

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

指定した ConcurrentDictionary<TKey,TValue> からコピーされた要素を格納し、既定のコンカレンシー レベルと既定の初期量を備え、指定した IEnumerable を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable has the default concurrency level, has the default initial capacity, and uses the specified IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

空で、指定したコンカレンシー レベルと容量を備え、キーの型の既定の比較子を使用する、ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level and capacity, and uses the default comparer for the key type.

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

指定した ConcurrentDictionary<TKey,TValue> から要素をコピーして格納し、指定した IEnumerable を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable, and uses the specified IEqualityComparer<T>.

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

空で、指定したコンカレンシー レベルと指定した初期量を備え、指定した ConcurrentDictionary<TKey,TValue> を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level, has the specified initial capacity, and uses the specified IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>()

空で、既定のコンカレンシー レベルと既定の初期量を備え、キーの型の既定の比較子を使用する、ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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

注釈

既定の同時実行レベルは Cpu の数と同じです。The default concurrency level is equal to the number of CPUs. 同時実行レベルが高いほど、干渉やブロッキングを発生させずに、同時に行われる書き込み操作が増加します。The higher the concurrency level is, the more concurrent write operations can take place without interference and blocking. 同時実行レベルの値を大きくすると、すべてのロック (テーブルのサイズ変更、ToArrayCountなど) を必要とする操作の負荷も高くなります。Higher concurrency level values also cause operations that require all locks (for example, table resizing, ToArray and Count) to become more expensive. 既定の容量 (DEFAULT_CAPACITY) は、バケットの初期数を表します。これは、非常に小さな辞書のサイズと大きな辞書を構築する際のサイズ変更の間のトレードオフです。The default capacity (DEFAULT_CAPACITY), which represents the initial number of buckets, is a trade-off between the size of a very small dictionary and the number of resizes when constructing a large dictionary. また、容量を小さな素数で割り切れないようにする必要があります。Also, the capacity should not be divisible by a small prime number. 既定の容量は31です。The default capacity is 31.

こちらもご覧ください

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

指定した ConcurrentDictionary<TKey,TValue> からコピーされた要素を格納し、既定のコンカレンシー レベルと既定の初期量を備え、キーの型の既定の比較子を使用する、IEnumerable<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable<T>, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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>The IEnumerable<T> whose elements are copied to the new ConcurrentDictionary<TKey,TValue>.

例外

collection またはそのキーが null です。collection or any of its keys is null.

collection には 1 つまたは複数の重複するキーが含まれます。collection contains one or more duplicate keys.

こちらもご覧ください

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

空で、既定のコンカレンシー レベルと容量を備え、指定した ConcurrentDictionary<TKey,TValue> を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level and capacity, and uses the specified 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>

キーの比較時に使用する等価比較の実装。The equality comparison implementation to use when comparing keys.

例外

comparernull です。comparer is null.

こちらもご覧ください

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

指定した ConcurrentDictionary<TKey,TValue> からコピーされた要素を格納し、既定のコンカレンシー レベルと既定の初期量を備え、指定した IEnumerable を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable has the default concurrency level, has the default initial capacity, and uses the specified 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>The IEnumerable<T> whose elements are copied to the new ConcurrentDictionary<TKey,TValue>.

comparer
IEqualityComparer<TKey>

キーの比較時に使用する IEqualityComparer<T> の実装。The IEqualityComparer<T> implementation to use when comparing keys.

例外

collection または comparernull です。collection or comparer is null.

こちらもご覧ください

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

空で、指定したコンカレンシー レベルと容量を備え、キーの型の既定の比較子を使用する、ConcurrentDictionary<TKey,TValue> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level and capacity, and uses the default comparer for the key type.

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> を更新するスレッドの推定数。The estimated number of threads that will update the ConcurrentDictionary<TKey,TValue> concurrently.

capacity
Int32

ConcurrentDictionary<TKey,TValue> が格納できる要素数の初期値。The initial number of elements that the ConcurrentDictionary<TKey,TValue> can contain.

例外

concurrencyLevel が 1 未満です。concurrencyLevel is less than 1.

または-or- capacity が 0 未満です。capacity is less than 0.

こちらもご覧ください

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

指定した ConcurrentDictionary<TKey,TValue> から要素をコピーして格納し、指定した IEnumerable を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable, and uses the specified 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> を更新するスレッドの推定数。The estimated number of threads that will update the ConcurrentDictionary<TKey,TValue> concurrently.

collection
IEnumerable<KeyValuePair<TKey,TValue>>

新しい IEnumerable<T> に要素がコピーされた ConcurrentDictionary<TKey,TValue>The IEnumerable<T> whose elements are copied to the new ConcurrentDictionary<TKey,TValue>.

comparer
IEqualityComparer<TKey>

キーの比較時に使用する IEqualityComparer<T> の実装。The IEqualityComparer<T> implementation to use when comparing keys.

例外

collection または comparernull です。collection or comparer is null.

concurrencyLevel が 1 未満です。concurrencyLevel is less than 1.

collection には 1 つまたは複数の重複するキーが含まれます。collection contains one or more duplicate keys.

こちらもご覧ください

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

空で、指定したコンカレンシー レベルと指定した初期量を備え、指定した ConcurrentDictionary<TKey,TValue> を使用する、IEqualityComparer<T> クラスの新しいインスタンスを初期化します。Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level, has the specified initial capacity, and uses the specified 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> を更新するスレッドの推定数。The estimated number of threads that will update the ConcurrentDictionary<TKey,TValue> concurrently.

capacity
Int32

ConcurrentDictionary<TKey,TValue> が格納できる要素数の初期値。The initial number of elements that the ConcurrentDictionary<TKey,TValue> can contain.

comparer
IEqualityComparer<TKey>

キーの比較時に使用する IEqualityComparer<T> の実装。The IEqualityComparer<T> implementation to use when comparing keys.

例外

comparernull です。comparer is null.

concurrencyLevel または capacity が 1 未満です。concurrencyLevel or capacity is less than 1.

こちらもご覧ください

適用対象