Queue<T>.TrimExcess Method

Definition

Overloads

TrimExcess()

Sets the capacity to the actual number of elements in the Queue<T>, if that number is less than 90 percent of current capacity.

TrimExcess(Int32)

Sets the capacity of a Queue<T> object to the specified number of entries.

TrimExcess()

Source:
Queue.cs
Source:
Queue.cs
Source:
Queue.cs

Sets the capacity to the actual number of elements in the Queue<T>, if that number is less than 90 percent of current capacity.

C#
public void TrimExcess();

Remarks

This method can be used to minimize a collection's memory overhead if no new elements will be added to the collection. The cost of reallocating and copying a large Queue<T> can be considerable, however, so the TrimExcess method does nothing if the list is at more than 90 percent of capacity. This avoids incurring a large reallocation cost for a relatively small gain.

This method is an O(n) operation, where n is Count.

To reset a Queue<T> to its initial state, call the Clear method before calling TrimExcess method. Trimming an empty Queue<T> sets the capacity of the Queue<T> to the default capacity.

See also

Applies to

.NET 10 and other versions
Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

TrimExcess(Int32)

Source:
Queue.cs

Sets the capacity of a Queue<T> object to the specified number of entries.

C#
public void TrimExcess(int capacity);

Parameters

capacity
Int32

The new capacity.

Exceptions

Passed capacity is lower than entries count.

Applies to

.NET 10 and .NET 9
Product Versions
.NET 9, 10