This documentation is archived and is not being maintained.

System.Collections.Concurrent Namespace

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.

  ClassDescription
Public classBlockingCollection(Of T)Provides blocking and bounding capabilities for thread-safe collections that implement IProducerConsumerCollection(Of T).
Public classConcurrentBag(Of T)Represents a thread-safe, unordered collection of objects.
Public classConcurrentDictionary(Of TKey, TValue)Represents a thread-safe collection of key-value pairs that can be accessed by multiple threads concurrently.
Public classConcurrentQueue(Of T)Represents a thread-safe first in-first out (FIFO) collection.
Public classConcurrentStack(Of T)Represents a thread-safe last in-first out (LIFO) collection.
Public classOrderablePartitioner(Of TSource)Represents a particular manner of splitting an orderable data source into multiple partitions.
Public classPartitionerProvides common partitioning strategies for arrays, lists, and enumerables.
Public classPartitioner(Of TSource)Represents a particular manner of splitting a data source into multiple partitions.

  InterfaceDescription
Public interfaceIProducerConsumerCollection(Of T)Defines methods to manipulate thread-safe collections intended for producer/consumer usage. This interface provides a unified representation for producer/consumer collections so that higher level abstractions such as System.Collections.Concurrent.BlockingCollection(Of T) can use the collection as the underlying storage mechanism.
Show: