BlockingCollection<T>.TakeFromAny 方法

定義

從任何一個指定的 BlockingCollection<T> 執行個體取得項目。

多載

TakeFromAny(BlockingCollection<T>[], T)

從任何一個指定的 BlockingCollection<T> 執行個體取得項目。

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

當觀察指定的取消語彙基元時,接受任何一個指定之 BlockingCollection<T> 執行個體中的項目。

TakeFromAny(BlockingCollection<T>[], T)

Source:
BlockingCollection.cs
Source:
BlockingCollection.cs
Source:
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 引數為 null。

collections 的計數大於 STA 的上限 62 和 MTA 的上限 63。

collections 引數是 0 長度陣列,或者包含 null 項目,或者已在集合呼叫 CompleteAdding()

至少其中一個基礎集合已在其 BlockingCollection<T> 執行個體外修改。

備註

對 TakeFromAny 的呼叫可能會封鎖,直到專案可供移除為止。

另請參閱

適用於

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

Source:
BlockingCollection.cs
Source:
BlockingCollection.cs
Source:
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 引數為 null。

collections 的計數大於 STA 的上限 62 和 MTA 的上限 63。

collections 引數是 0 長度陣列,或者包含 null 項目,或者已在集合呼叫 CompleteAdding()

至少其中一個 BlockingCollection<T> 執行個體已經處置。

備註

對 TakeFromAny 的呼叫可能會封鎖,直到專案可供移除為止。 如果取消權杖,方法會提早傳回 OperationCanceledException。

另請參閱

適用於