Compartilhar via


ConcurrentDictionary<TKey,TValue> Construtores

Definição

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue>.

Sobrecargas

ConcurrentDictionary<TKey,TValue>()

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem o nível de simultaneidade padrão, tem a capacidade inicial padrão e usa o comparador padrão para o tipo de chave.

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

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que contém elementos copiados do IEnumerable<T> especificado, tem o nível de simultaneidade padrão, tem a capacidade inicial padrão e usa o comparador padrão para o tipo de chave.

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

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem a capacidade e o nível de simultaneidade padrão e usa o IEqualityComparer<T> especificado.

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

Inicializa uma nova instância da ConcurrentDictionary<TKey,TValue> classe que contém elementos copiados do especificado IEnumerable tem o nível de simultaneidade padrão, tem a capacidade inicial padrão e usa o especificado IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem a capacidade e o nível de simultaneidade especificados e usa o comparador padrão para o tipo de chave.

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

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que contém elementos copiados da IEnumerable especificada e usa o IEqualityComparer<T> especificado.

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

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem o nível se simultaneidade especificado, tem a capacidade inicial especificada e usa o IEqualityComparer<T> especificado.

ConcurrentDictionary<TKey,TValue>()

Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem o nível de simultaneidade padrão, tem a capacidade inicial padrão e usa o comparador padrão para o tipo de chave.

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

Comentários

O nível de simultaneidade padrão é igual ao número de CPUs. Quanto maior o nível de simultaneidade, mais operações de gravação simultâneas podem ocorrer sem interferência e bloqueio. Valores de nível de simultaneidade mais altos também fazem com que as operações que exigem todos os bloqueios (por exemplo, redimensionamento ToArray de tabela e Count) se tornem mais caras. A capacidade padrão (DEFAULT_CAPACITY), que representa o número inicial de buckets, é uma compensação entre o tamanho de um dicionário muito pequeno e o número de redimensionamentos ao construir um dicionário grande. Além disso, a capacidade não deve ser divisível por um número primo pequeno. A capacidade padrão é 31.

Confira também

Aplica-se a

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

Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que contém elementos copiados do IEnumerable<T> especificado, tem o nível de simultaneidade padrão, tem a capacidade inicial padrão e usa o comparador padrão para o tipo de chave.

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)))

Parâmetros

collection
IEnumerable<KeyValuePair<TKey,TValue>>

O IEnumerable<T> cujos elementos são copiados para o novo ConcurrentDictionary<TKey,TValue>.

Exceções

collection ou qualquer uma de suas chaves é null.

collection contém uma ou mais chaves duplicadas.

Confira também

Aplica-se a

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

Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem a capacidade e o nível de simultaneidade padrão e usa o IEqualityComparer<T> especificado.

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))

Parâmetros

comparer
IEqualityComparer<TKey>

A implementação de comparação de igualdade a ser usada ao comparar chaves.

Exceções

comparer é null.

Confira também

Aplica-se a

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

Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs

Inicializa uma nova instância da ConcurrentDictionary<TKey,TValue> classe que contém elementos copiados do especificado IEnumerable tem o nível de simultaneidade padrão, tem a capacidade inicial padrão e usa o especificado 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))

Parâmetros

collection
IEnumerable<KeyValuePair<TKey,TValue>>

O IEnumerable<T> cujos elementos são copiados para o novo ConcurrentDictionary<TKey,TValue>.

comparer
IEqualityComparer<TKey>

A implementação de IEqualityComparer<T> a ser usada ao comparar chaves.

Exceções

collection ou comparer é null.

Confira também

Aplica-se a

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem a capacidade e o nível de simultaneidade especificados e usa o comparador padrão para o tipo de chave.

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)

Parâmetros

concurrencyLevel
Int32

O número estimado de threads que atualizarão o ConcurrentDictionary<TKey,TValue> simultaneamente ou apenas no .NET 8+, -1 para indicar o nível de simultaneidade padrão.

capacity
Int32

O número inicial de elementos que o ConcurrentDictionary<TKey,TValue> pode conter.

Exceções

concurrencyLevel é menor que 1.

- ou -

capacity é menor que 0.

Confira também

Aplica-se a

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

Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que contém elementos copiados da IEnumerable especificada e usa o IEqualityComparer<T> especificado.

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))

Parâmetros

concurrencyLevel
Int32

O número estimado de threads que atualizarão o ConcurrentDictionary<TKey,TValue> simultaneamente ou apenas no .NET 8+, -1 para indicar o nível de simultaneidade padrão.

collection
IEnumerable<KeyValuePair<TKey,TValue>>

O IEnumerable<T> cujos elementos são copiados para o novo ConcurrentDictionary<TKey,TValue>.

comparer
IEqualityComparer<TKey>

A implementação de IEqualityComparer<T> a ser usada ao comparar chaves.

Exceções

collection ou comparer é null.

concurrencyLevel é menor que 1.

collection contém uma ou mais chaves duplicadas.

Confira também

Aplica-se a

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

Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs
Origem:
ConcurrentDictionary.cs

Inicializa uma nova instância da classe ConcurrentDictionary<TKey,TValue> que está vazia, tem o nível se simultaneidade especificado, tem a capacidade inicial especificada e usa o IEqualityComparer<T> especificado.

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))

Parâmetros

concurrencyLevel
Int32

O número estimado de threads que atualizarão o ConcurrentDictionary<TKey,TValue> simultaneamente ou apenas no .NET 8+, -1 para indicar o nível de simultaneidade padrão.

capacity
Int32

O número inicial de elementos que o ConcurrentDictionary<TKey,TValue> pode conter.

comparer
IEqualityComparer<TKey>

A implementação de IEqualityComparer<T> a ser usada ao comparar chaves.

Exceções

comparer é null.

concurrencyLevel ou capacity é menor que 1.

Confira também

Aplica-se a