ConcurrentDictionary<TKey,TValue> Конструкторы

Определение

Инициализирует новый экземпляр класса ConcurrentDictionary<TKey,TValue>.

Перегрузки

Имя Описание
ConcurrentDictionary<TKey,TValue>()

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, который является пустым, имеет уровень параллелизма по умолчанию, имеет начальную емкость по умолчанию и использует средство сравнения по умолчанию для типа ключа.

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

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, содержащий элементы, скопированные из указанного IEnumerable<T>, имеет уровень параллелизма по умолчанию, имеет начальную емкость по умолчанию и использует средство сравнения по умолчанию для типа ключа.

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

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, который является пустым, имеет уровень параллелизма по умолчанию и емкость и использует указанный.IEqualityComparer<T>

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

Инициализирует новый экземпляр класса, который содержит элементы, скопированные из указанного ConcurrentDictionary<TKey,TValue>IEnumerable, имеет уровень параллелизма по умолчанию, имеет начальную емкость по умолчанию и использует указанный.IEqualityComparer<T>

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, который является пустым, имеет указанный уровень параллелизма и емкость и использует средство сравнения по умолчанию для типа ключа.

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

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, содержащего элементы, скопированные из указанного IEnumerable, и использует указанный IEqualityComparer<T>.

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

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, который является пустым, имеет указанный уровень параллелизма, имеет указанную начальную емкость и использует указанный.IEqualityComparer<T>

ConcurrentDictionary<TKey,TValue>()

Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, который является пустым, имеет уровень параллелизма по умолчанию, имеет начальную емкость по умолчанию и использует средство сравнения по умолчанию для типа ключа.

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

Комментарии

Уровень параллелизма по умолчанию равен количеству ЦП. Чем выше уровень параллелизма, тем больше одновременных операций записи может происходить без вмешательства и блокировки. Более высокие значения уровня параллелизма также вызывают операции, требующие всех блокировок (например, изменение размера таблицы и ToArrayCount) для повышения затрат. Емкость по умолчанию (DEFAULT_CAPACITY), представляющая начальное число сегментов, является компромиссом между размером очень маленького словаря и количеством размеров при создании большого словаря. Кроме того, емкость не должна быть делимой на небольшое простое число. Емкость по умолчанию — 31.

См. также раздел

Применяется к

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

Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, содержащий элементы, скопированные из указанного IEnumerable<T>, имеет уровень параллелизма по умолчанию, имеет начальную емкость по умолчанию и использует средство сравнения по умолчанию для типа ключа.

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 содержит один или несколько повторяющихся ключей.

См. также раздел

Применяется к

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

Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, который является пустым, имеет уровень параллелизма по умолчанию и емкость и использует указанный.IEqualityComparer<T>

public:
 ConcurrentDictionary(System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
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>

Реализация сравнения равенства, используемая при сравнении ключей.

Исключения

comparer равно null.

См. также раздел

Применяется к

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

Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs

Инициализирует новый экземпляр класса, который содержит элементы, скопированные из указанного ConcurrentDictionary<TKey,TValue>IEnumerable, имеет уровень параллелизма по умолчанию, имеет начальную емкость по умолчанию и использует указанный.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);
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 или comparer есть null.

См. также раздел

Применяется к

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs

Инициализирует новый экземпляр 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> одновременно или только в .NET 8+ -1, чтобы указать уровень параллелизма по умолчанию.

capacity
Int32

Начальное число элементов, которые ConcurrentDictionary<TKey,TValue> могут содержаться.

Исключения

concurrencyLevel меньше 1.

–или–

capacity меньше 0.

См. также раздел

Применяется к

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

Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs

Инициализирует новый экземпляр ConcurrentDictionary<TKey,TValue> класса, содержащего элементы, скопированные из указанного IEnumerable, и использует указанный 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);
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> одновременно или только в .NET 8+ -1, чтобы указать уровень параллелизма по умолчанию.

collection
IEnumerable<KeyValuePair<TKey,TValue>>

Элементы IEnumerable<T> , элементы которых копируются в новые ConcurrentDictionary<TKey,TValue>.

comparer
IEqualityComparer<TKey>

Реализация, используемая IEqualityComparer<T> при сравнении ключей.

Исключения

collection или comparer есть null.

concurrencyLevel меньше 1.

collection содержит один или несколько повторяющихся ключей.

См. также раздел

Применяется к

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

Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs
Исходный код:
ConcurrentDictionary.cs

Инициализирует новый экземпляр 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);
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> одновременно или только в .NET 8+ -1, чтобы указать уровень параллелизма по умолчанию.

capacity
Int32

Начальное число элементов, которые ConcurrentDictionary<TKey,TValue> могут содержаться.

comparer
IEqualityComparer<TKey>

Реализация, используемая IEqualityComparer<T> при сравнении ключей.

Исключения

comparer равно null.

concurrencyLevel или capacity меньше 1.

См. также раздел

Применяется к