Queue Class

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Represents a first-in, first-out collection of objects.


Namespace:  System.Collections
Assembly:  mscorlib (in mscorlib.dll)

public class Queue : ICollection, IEnumerable, 

The Queue type exposes the following members.

Public methodQueueInitializes a new instance of the Queue class that is empty, has the default initial capacity, and uses the default growth factor.

Public propertyCountGets the number of elements contained in the Queue.
Public propertyIsSynchronizedGets a value indicating whether access to the Queue is synchronized (thread safe).
Public propertySyncRootGets an object that can be used to synchronize access to the Queue.

Public methodClearRemoves all objects from the Queue.
Public methodCloneCreates a shallow copy of the Queue.
Public methodContainsDetermines whether an element is in the Queue.
Public methodCopyToCopies the Queue elements to an existing one-dimensional Array, starting at the specified array index.
Public methodDequeueRemoves and returns the object at the beginning of the Queue.
Public methodEnqueueAdds an object to the end of the Queue.
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetEnumeratorReturns an enumerator that iterates through the Queue.
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodPeekReturns the object at the beginning of the Queue without removing it.
Public methodToArrayCopies the Queue elements to a new array.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

Queues are useful for storing messages in the order they were received for sequential processing. This class implements a queue as a circular array. Objects stored in a Queue are inserted at one end and removed from the other.

The capacity of a Queue is the number of elements the Queue can hold. As elements are added to a Queue, the capacity is automatically increased as required through reallocation. The capacity can be decreased by calling TrimToSize.

The growth factor is the number by which the current capacity is multiplied when a greater capacity is required. The growth factor is determined when the Queue is constructed. The default growth factor is 2.0. The capacity of the Queue will always increase by at least a minimum of four, regardless of the growth factor. For example, a Queue with a growth factor of 1.0 will always increase in capacity by four when a greater capacity is required.

Queue accepts nullNothingnullptrunita null reference (Nothing in Visual Basic) as a valid value and allows duplicate elements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.