Compartilhar via


System.Collections.Concurrent Namespace

Fornece várias classes de coleção thread-safe que devem ser usadas no lugar dos tipos correspondentes nos namespaces System.Collections e System.Collections.Generic sempre que vários threads estiverem acessando a coleção simultaneamente.

No entanto, o acesso a elementos de um objeto de coleção por meio de métodos de extensão ou por meio de implementações de interface explícitas não tem garantia de ser thread-safe e pode precisar ser sincronizado pelo chamador.

Classes

BlockingCollection<T>

Fornece recursos de bloqueio elimitação para coleções thread-safe que implementam IProducerConsumerCollection<T>.

ConcurrentBag<T>

Representa uma coleção de objetos thread-safe e não ordenada.

ConcurrentDictionary<TKey,TValue>

Representa uma coleção thread-safe de pares chave/valor que pode ser acessada por vários threads simultaneamente.

ConcurrentQueue<T>

Representa uma coleção FIFO (thread-safe first out).

ConcurrentStack<T>

Representa uma coleção LIFO (última saída) segura por thread.

OrderablePartitioner<TSource>

Representa uma maneira específica de dividir uma fonte de dados ordenada em várias partições.

Partitioner

Fornece estratégias comuns de particionamento para matrizes, listas e enumeráveis.

Partitioner<TSource>

Representa uma maneira específica de dividir uma fonte de dados em várias partições.

Estruturas

ConcurrentDictionary<TKey,TValue>.AlternateLookup<TAlternateKey>

Fornece um tipo que pode ser usado para executar operações em um ConcurrentDictionary<TKey,TValue>

usando uma TAlternateKey como chave em vez de uma TKey.

Interfaces

IProducerConsumerCollection<T>

Define métodos para manipular coleções thread-safe destinadas ao uso de produtor/consumidor. Essa interface fornece uma representação unificada para coleções de produtores/consumidores para que abstrações de nível mais alto, como BlockingCollection<T>, possam usar a coleção como o mecanismo de armazenamento subjacente.

Enumerações

EnumerablePartitionerOptions

Especifica opções para controlar o comportamento de buffer de um particionador.