Stack<T>.TrimExcess Method

Definition

Overloads

TrimExcess()

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

TrimExcess(Int32)

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

TrimExcess()

Source:
Stack.cs
Source:
Stack.cs
Source:
Stack.cs

Sets the capacity to the actual number of elements in the Stack<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 Stack<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 Stack<T> to its initial state, call the Clear method before calling TrimExcess method. Trimming an empty Stack<T> sets the capacity of the Stack<T> to the default capacity.

See also

Applies to

.NET 9 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
.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:
Stack.cs

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

C#
public void TrimExcess(int capacity);

Parameters

capacity
Int32

The new capacity.

Exceptions

Passed capacity is lower than 0 or entries count.

Applies to

.NET 9
Product Versions
.NET 9