語言

BlockingCollection<T>.TakeFromAny 方法

定義

從任一指定 BlockingCollection<T> 實例中取一個項目。

多載

名稱 Description
TakeFromAny(BlockingCollection<T>[], T)

從任一指定 BlockingCollection<T> 實例中取一個項目。

TakeFromAny(BlockingCollection<T>[], T, CancellationToken)

從指定的 BlockingCollection<T> 實例中取一個項目,同時觀察指定的消去標記。

TakeFromAny(BlockingCollection<T>[], T)

來源:
BlockingCollection.cs
來源:
BlockingCollection.cs
來源:
BlockingCollection.cs
來源:
BlockingCollection.cs
來源:
BlockingCollection.cs

從任一指定 BlockingCollection<T> 實例中取一個項目。

public:
 static int TakeFromAny(cli::array <System::Collections::Concurrent::BlockingCollection<T> ^> ^ collections, [Runtime::InteropServices::Out] T % item);
public static int TakeFromAny(System.Collections.Concurrent.BlockingCollection<T>[] collections, out T item);
public static int TakeFromAny(System.Collections.Concurrent.BlockingCollection<T>[] collections, out T? item);
static member TakeFromAny : System.Collections.Concurrent.BlockingCollection<'T>[] * 'T -> int
Public Shared Function TakeFromAny (collections As BlockingCollection(Of T)(), ByRef item As T) As Integer

參數

collections
BlockingCollection<T>[]

收藏的陣列。

item
T

那個從其中一個收藏中被移除的項目。

傳回

該項目被移除的陣列中 collections 集合的索引。

例外狀況

至少有一個 BlockingCollection<T> 個案已被處理。

這個 collections 論證是空的。

這個 collections 數量超過STA的最大62和MTA的最大大小63。

collections參數為 0 長的陣列,或包含空元素,或CompleteAdding()已在集合中被呼叫。

至少有一個底層集合在其實例外 BlockingCollection<T> 被修改。

備註

致電 TakeFromAny 可能會封鎖,直到有商品可供移除。

另請參閱

適用於

TakeFromAny(BlockingCollection<T>[], T, CancellationToken)

來源:
BlockingCollection.cs
來源:
BlockingCollection.cs
來源:
BlockingCollection.cs
來源:
BlockingCollection.cs
來源:
BlockingCollection.cs

從指定的 BlockingCollection<T> 實例中取一個項目,同時觀察指定的消去標記。

public:
 static int TakeFromAny(cli::array <System::Collections::Concurrent::BlockingCollection<T> ^> ^ collections, [Runtime::InteropServices::Out] T % item, System::Threading::CancellationToken cancellationToken);
public static int TakeFromAny(System.Collections.Concurrent.BlockingCollection<T>[] collections, out T item, System.Threading.CancellationToken cancellationToken);
public static int TakeFromAny(System.Collections.Concurrent.BlockingCollection<T>[] collections, out T? item, System.Threading.CancellationToken cancellationToken);
static member TakeFromAny : System.Collections.Concurrent.BlockingCollection<'T>[] * 'T * System.Threading.CancellationToken -> int
Public Shared Function TakeFromAny (collections As BlockingCollection(Of T)(), ByRef item As T, cancellationToken As CancellationToken) As Integer

參數

collections
BlockingCollection<T>[]

收藏的陣列。

item
T

那個從其中一個收藏中被移除的項目。

cancellationToken
CancellationToken

一個可以觀察的取消標記。

傳回

該項目被移除的陣列中 collections 集合的索引。

例外狀況

至少有一個底層集合在其實例外 BlockingCollection<T> 被修改。

這個 collections 論證是空的。

這個 collections 數量超過STA的最大62和MTA的最大大小63。

參數 collections 為 0 長的陣列,或包含空元素,或 CompleteAdding() 在集合中被呼叫。

至少有一個 BlockingCollection<T> 個案已被處理。

備註

致電 TakeFromAny 可能會封鎖,直到有商品可供移除。 若標記被取消,方法會提前回傳並使用操作取消例外(OperationCanceledException)。

另請參閱

適用於