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

指定用于控制分区程序缓冲行为的选项。