System.Collections.Concurrent Пространство имен

Предоставляет несколько классов коллекции, безопасных для потоков, которые следует использовать вместо соответствующих типов в System.CollectionsSystem.Collections.Generic пространствах имен и всякий раз, когда несколько потоков обращаются к коллекции одновременно.

Однако доступ к элементам объекта коллекции через методы расширения или через явные реализации интерфейса не гарантируется потокобезопасность и может потребоваться синхронизировать вызывающий объект.

Классы

Имя Описание
BlockingCollection<T>

Предоставляет возможности блокировки и ограничения для потоково-безопасных коллекций, реализующих IProducerConsumerCollection<T>.

ConcurrentBag<T>

Представляет потокобезопасную, неупорядоченную коллекцию объектов.

ConcurrentDictionary<TKey,TValue>

Представляет потокобезопасную коллекцию пар "ключ-значение", доступ к которым может осуществляться несколькими потоками одновременно.

ConcurrentQueue<T>

Представляет потокобезопасную в первую очередь коллекцию FIFO.

ConcurrentStack<T>

Представляет потокобезопасную последнюю в первую очередь коллекцию LIFO.

OrderablePartitioner<TSource>

Представляет определенный способ разделения упорядоченного источника данных на несколько секций.

Partitioner

Предоставляет общие стратегии секционирования для массивов, списков и перечислений.

Partitioner<TSource>

Представляет определенный способ разделения источника данных на несколько секций.

Структуры

Имя Описание
ConcurrentDictionary<TKey,TValue>.AlternateLookup<TAlternateKey>

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

Интерфейсы

Имя Описание
IProducerConsumerCollection<T>

Определяет методы для управления потоками безопасных коллекций, предназначенных для использования производителя или потребителя. Этот интерфейс предоставляет единое представление для коллекций производителей и потребителей, чтобы более высокий уровень абстракций, таких как BlockingCollection<T> можно использовать коллекцию в качестве базового механизма хранения.

Перечисления

Имя Описание
EnumerablePartitionerOptions

Задает параметры для управления поведением буферизации секционатора.