Gemstone Threading Library
Show/Hide TOC

# Gemstone.Threading.Collections Namespace

The Gemstone.Threading.Collections namespace provides classes for collections related to threading functionality, e.g., PriorityQueueT.

## Classes

AsyncDoubleBufferedQueueT | Combines AsyncQueueT and DoubleBufferedQueueT to provide a low-contention, double-buffered queue suitable for multiple-producer, single-consumer scenarios.
AsyncQueueT | Creates a fast, light-weight asynchronous processing queue with very low contention.
DoubleBufferedQueueT | A thread-safe double-buffered queue that allows for low-contention item processing in single-producer, single-consumer scenarios.
DoubleBufferedQueueManagerT | Manages queues to reduce contention for a multithreaded, multiple-producer, single-consumer scenario.
DoubleBufferedQueueProducerT | A producer for a DoubleBufferedQueueT which can only be used to provide items to the queue for consumption.
PriorityQueueT | Represents a thread-safe prioritized first in-first out (FIFO) collection.
ProcessQueueT | Represents a thread-safe (via locking) list of items, based on ListT, that get processed on independent threads with a consumer provided function.

## Structures

ProcessQueueStatistics | Represents the statistics of a ProcessQueueT.

## Delegates

ProcessQueueT CanProcessItemFunctionSignature | Function signature that determines if an item can be currently processed.
ProcessQueueT ProcessItemFunctionSignature | Function signature that defines a method to process items one at a time.
ProcessQueueT ProcessItemsFunctionSignature | Function signature that defines a method to process multiple items at once.

## Enumerations

QueueProcessingStyle | Enumeration of possible ProcessQueueT processing styles.
QueueThreadingMode | Enumeration of possible ProcessQueueT threading modes.
RequeueMode | Enumeration of possible requeue modes.
RequeueReason | Enumeration of possible requeue reasons.