BlockingCollection<T>.TakeFromAny メソッド

定義

指定したいずれかの BlockingCollection<T> インスタンスから項目を取得します。

オーバーロード

TakeFromAny(BlockingCollection<T>[], T)

指定したいずれかの BlockingCollection<T> インスタンスから項目を取得します。

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

指定したキャンセル トークンを観察しながら、指定した BlockingCollection<T> インスタンスのいずれかから項目を取得します。

TakeFromAny(BlockingCollection<T>[], T)

ソース:
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

コレクションの 1 つから削除された項目。

戻り値

項目が削除された collections 配列内のコレクションのインデックス。

例外

1 つ以上の BlockingCollection<T> インスタンスが破棄されています。

collections 引数が null です。

collections の数が STA および MTA の最大サイズ (STA の場合は 62、MTA の場合は 63) を超えています。

collections 引数が長さ 0 の配列であるか、NULL 要素がこの引数に含まれています。または、CompleteAdding() がコレクションで呼び出されました。

1 つ以上の基になるコレクションが BlockingCollection<T> インスタンス以外で変更されました。

注釈

TakeFromAny の呼び出しは、アイテムを削除できるようになるまでブロックできます。

こちらもご覧ください

適用対象

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

ソース:
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

コレクションの 1 つから削除された項目。

cancellationToken
CancellationToken

観察するキャンセル トークン。

戻り値

項目が削除された collections 配列内のコレクションのインデックス。

例外

CancellationToken は取り消されます。

1 つ以上の基になるコレクションが BlockingCollection<T> インスタンス以外で変更されました。

collections 引数が null です。

collections の数が STA および MTA の最大サイズ (STA の場合は 62、MTA の場合は 63) を超えています。

collections 引数が長さ 0 の配列であるか、NULL 要素がこの引数に含まれています。または、CompleteAdding() がコレクションで呼び出されました。

1 つ以上の BlockingCollection<T> インスタンスが破棄されています。

注釈

TakeFromAny の呼び出しは、アイテムを削除できるようになるまでブロックできます。 トークンが取り消された場合、メソッドは OperationCanceledException を使用して早期にを返します。

こちらもご覧ください

適用対象