Partilhar via


BlockingCollection<T>.TakeFromAny Método

Definição

Toma um item de qualquer uma das instâncias BlockingCollection<T> especificadas.

Sobrecargas

TakeFromAny(BlockingCollection<T>[], T)

Toma um item de qualquer uma das instâncias BlockingCollection<T> especificadas.

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

Recebe um item de qualquer uma das instâncias BlockingCollection<T> especificadas, observando ao mesmo tempo o token de cancelamento especificado.

TakeFromAny(BlockingCollection<T>[], T)

Origem:
BlockingCollection.cs
Origem:
BlockingCollection.cs
Origem:
BlockingCollection.cs

Toma um item de qualquer uma das instâncias BlockingCollection<T> especificadas.

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

Parâmetros

collections
BlockingCollection<T>[]

A matriz de coleções.

item
T

O item que foi removido de uma das coleções.

Retornos

O índice da coleção na matriz collections da qual o item foi removido.

Exceções

Pelo menos uma das instâncias de BlockingCollection<T> foi descartada.

O argumento collections é nulo.

A contagem de collections é maior que o tamanho máximo de 62 para STA e 63 para MTA.

O argumento collections é uma matriz de tamanho 0 ou contém um elemento nulo ou CompleteAdding() foi chamado na coleção.

Pelo menos uma das coleções subjacentes foi alterada fora da instância de BlockingCollection<T>.

Comentários

Uma chamada para TakeFromAny pode ser bloqueada até que um item esteja disponível para ser removido.

Confira também

Aplica-se a

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

Origem:
BlockingCollection.cs
Origem:
BlockingCollection.cs
Origem:
BlockingCollection.cs

Recebe um item de qualquer uma das instâncias BlockingCollection<T> especificadas, observando ao mesmo tempo o token de cancelamento especificado.

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

Parâmetros

collections
BlockingCollection<T>[]

A matriz de coleções.

item
T

O item que foi removido de uma das coleções.

cancellationToken
CancellationToken

Um token de cancelamento a ser observado.

Retornos

O índice da coleção na matriz collections da qual o item foi removido.

Exceções

Pelo menos uma das coleções subjacentes foi alterada fora da instância de BlockingCollection<T>.

O argumento collections é nulo.

A contagem de collections é maior que o tamanho máximo de 62 para STA e 63 para MTA.

O argumento collections é uma matriz de comprimento zero ou contém um elemento nulo, ou CompleteAdding() foi chamado na coleção.

Pelo menos uma das instâncias de BlockingCollection<T> foi descartada.

Comentários

Uma chamada para TakeFromAny pode ser bloqueada até que um item esteja disponível para ser removido. O método retornará antecipadamente com uma OperationCanceledException se o token for cancelado.

Confira também

Aplica-se a