System.Collections.Concurrent Przestrzeń nazw

System.Collections.Concurrent Przestrzeń nazw zawiera kilka klas kolekcji metodą o bezpiecznych wątkach, które powinny być używane zamiast odpowiednich typów w System.Collections i System.Collections.Generic przestrzeni nazw w każdym przypadku, gdy wiele wątków jednocześnie uzyskują kolekcji. The System.Collections.Concurrent namespace provides several thread-safe collection classes that should be used in place of the corresponding types in the System.Collections and System.Collections.Generic namespaces whenever multiple threads are accessing the collection concurrently. Jednak dostęp do elementów obiekt kolekcji za pomocą metody rozszerzenia lub jawne implementacje interfejsu nie musi być metodą o bezpiecznych wątkach i może być konieczne mają być synchronizowane przez obiekt wywołujący. However, access to elements of a collection object through extension methods or through explicit interface implementations are not guaranteed to be thread-safe and may need to be synchronized by the caller.

Klasy

BlockingCollection<T>

Oferuje funkcje blokowania i ograniczania dla kolekcji bezpiecznych dla wątków, które implementują IProducerConsumerCollection<T>.Provides blocking and bounding capabilities for thread-safe collections that implement IProducerConsumerCollection<T>.

ConcurrentBag<T>

Reprezentuje bezpieczną wątkowo, nieuporządkowaną kolekcję obiektów.Represents a thread-safe, unordered collection of objects.

ConcurrentDictionary<TKey,TValue>

Reprezentuje bezpieczną wątkowo kolekcję par klucz/wartość, do których można uzyskać dostęp jednocześnie przez wiele wątków.Represents a thread-safe collection of key/value pairs that can be accessed by multiple threads concurrently.

ConcurrentQueue<T>

Reprezentuje z bezpiecznym wątkem pierwszą kolekcję w pierwszej kolejności (FIFO).Represents a thread-safe first in-first out (FIFO) collection.

ConcurrentStack<T>

Reprezentuje z bezpiecznym wątkem ostatnią kolekcję w pierwszej kolejności (LIFO).Represents a thread-safe last in-first out (LIFO) collection.

OrderablePartitioner<TSource>

Reprezentuje szczególny sposób dzielenia źródła danych z kolejnością na wiele partycji.Represents a particular manner of splitting an orderable data source into multiple partitions.

Partitioner

Zapewnia typowe strategie partycjonowania dla tablic, list i wyliczalnych.Provides common partitioning strategies for arrays, lists, and enumerables.

Partitioner<TSource>

Reprezentuje szczególny sposób dzielenia źródła danych na wiele partycji.Represents a particular manner of splitting a data source into multiple partitions.

Interfejsy

IProducerConsumerCollection<T>

Definiuje metody służące do manipulowania kolekcjami bezpiecznymi dla wątków przeznaczonymi do użycia przez producenta i konsumenta.Defines methods to manipulate thread-safe collections intended for producer/consumer usage. Ten interfejs zapewnia ujednoliconą reprezentację dla kolekcji producent/konsument, dzięki czemu abstrakcje wyższego poziomu, takie jak BlockingCollection<T> mogą używać kolekcji jako podstawowego mechanizmu magazynu.This interface provides a unified representation for producer/consumer collections so that higher level abstractions such as BlockingCollection<T> can use the collection as the underlying storage mechanism.

Wyliczenia

EnumerablePartitionerOptions

Określa opcje sterujące zachowaniem buforowania dla partycji.Specifies options to control the buffering behavior of a partitioner.