ConcurrentStack<T>.TryPopRange 方法

定义

重载

TryPopRange(T[], Int32, Int32)

尝试自动弹出并返回 ConcurrentStack<T> 顶部的多个对象。

TryPopRange(T[])

尝试自动弹出并返回 ConcurrentStack<T> 顶部的多个对象。

TryPopRange(T[], Int32, Int32)

Source:
ConcurrentStack.cs
Source:
ConcurrentStack.cs
Source:
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[]

要将从 ConcurrentStack<T> 顶部弹出的对象添加到的 Array

startIndex
Int32

items 中从零开始的偏移量,在此开始从 ConcurrentStack<T> 顶部插入元素。

count
Int32

ConcurrentStack<T> 顶部弹出并插入 items 中的元素数。

返回

成功从堆栈顶部弹出并插入 items 中的对象数。

例外

items 为 null 引用(在 Visual Basic 中为 Nothing)。

startIndexcount 为负数。 或 startIndex 大于或等于 items 的长度。

startIndex + count 大于 items 的长度。

注解

弹出多个项时,如果堆栈上几乎没有争用,使用 TryPopRange 比每个要删除的项使用 TryPop 一次更高效。 节点用 items startIndex 中要弹出的第一个项、在 startIndex + 1 中弹出的第二个项填充数组,依此填充。

另请参阅

适用于

TryPopRange(T[])

Source:
ConcurrentStack.cs
Source:
ConcurrentStack.cs
Source:
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[]

要将从 ConcurrentStack<T> 顶部弹出的对象添加到的 Array

返回

成功从 ConcurrentStack<T> 顶部弹出并插入 items 中的对象数。

例外

items 是 null 参数(在 Visual Basic 中为 Nothing)。

注解

弹出多个项时,如果堆栈上几乎没有争用,使用 TryPopRange 比每个要删除的项使用 TryPop 一次更高效。 节点用 items startIndex 中要弹出的第一个项、在 startIndex + 1 中弹出的第二个项填充数组,依此填充。

有关代码示例,请参阅 ConcurrentStack<T>

另请参阅

适用于