ConcurrentStack<T>.TryPopRange Метод

Определение

Перегрузки

TryPopRange(T[], Int32, Int32)

Пытается извлечь и вернуть несколько объектов из начала ConcurrentStack<T> в виде неделимого блока.

TryPopRange(T[])

Пытается извлечь и вернуть несколько объектов из начала ConcurrentStack<T> в виде неделимого блока.

TryPopRange(T[], Int32, Int32)

Исходный код:
ConcurrentStack.cs
Исходный код:
ConcurrentStack.cs
Исходный код:
ConcurrentStack.cs

Пытается извлечь и вернуть несколько объектов из начала ConcurrentStack<T> в виде неделимого блока.

public:
 int TryPopRange(cli::array <T> ^ items, int startIndex, int count);
public int TryPopRange (T[] items, int startIndex, int count);
member this.TryPopRange : 'T[] * int * int -> int
Public Function TryPopRange (items As T(), startIndex As Integer, count As Integer) As Integer

Параметры

items
T[]

Массив Array, в который будут добавлены объекты, извлеченные из начала ConcurrentStack<T>.

startIndex
Int32

Отсчитываемое от нуля смещение в массиве items, с которого начинается вставка элементов из начала ConcurrentStack<T>.

count
Int32

Число элементов, извлекаемых из начала ConcurrentStack<T> и вставляемых в массив items.

Возвращаемое значение

Число объектов, успешно извлеченных из верхней части стека и вставленных в items.

Исключения

Параметр items является ссылкой на null (Nothing в Visual Basic).

startIndex или count является отрицательным значением. Или значение параметра startIndex больше или равно длине items.

Значение startIndex + count превышает длину items.

Комментарии

При перемещении нескольких элементов, если в стеке мало состязаний, использование TryPopRange может быть более эффективным, чем использование TryPop одного элемента для удаления. Узлы заполняют items массив первым элементом, который будет выскочен в startIndex, второй элемент, который будет выброщен в startIndex + 1, и т. д.

См. также раздел

Применяется к

TryPopRange(T[])

Исходный код:
ConcurrentStack.cs
Исходный код:
ConcurrentStack.cs
Исходный код:
ConcurrentStack.cs

Пытается извлечь и вернуть несколько объектов из начала ConcurrentStack<T> в виде неделимого блока.

public:
 int TryPopRange(cli::array <T> ^ items);
public int TryPopRange (T[] items);
member this.TryPopRange : 'T[] -> int
Public Function TryPopRange (items As T()) As Integer

Параметры

items
T[]

Массив Array, в который будут добавлены объекты, извлеченные из начала ConcurrentStack<T>.

Возвращаемое значение

Число объектов, успешно извлеченных из начала ConcurrentStack<T> и вставленных в массив items.

Исключения

items — это аргумент null (Nothing в Visual Basic).

Комментарии

При перемещении нескольких элементов, если в стеке мало состязаний, использование TryPopRange может быть более эффективным, чем один TryPop раз для каждого элемента, который требуется удалить. Узлы заполняют items массив первым элементом, который будет выскочен в startIndex, второй элемент, который будет выброщен в startIndex + 1, и т. д.

Пример кода см. в разделе ConcurrentStack<T>.

См. также раздел

Применяется к