Comparteix a través de


BlockingCollection<T>.TakeFromAny Método

Definición

Toma un elemento de cualquiera de las instancias especificadas de BlockingCollection<T>.

Sobrecargas

TakeFromAny(BlockingCollection<T>[], T)

Toma un elemento de cualquiera de las instancias especificadas de BlockingCollection<T>.

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

Toma un elemento de cualquiera de las instancias de BlockingCollection<T> especificadas observando el token de cancelación indicado.

TakeFromAny(BlockingCollection<T>[], T)

Source:
BlockingCollection.cs
Source:
BlockingCollection.cs
Source:
BlockingCollection.cs

Toma un elemento de cualquiera de las instancias especificadas de 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

Parámetros

collections
BlockingCollection<T>[]

Matriz de colecciones.

item
T

Elemento que se quitó de una de las colecciones.

Devoluciones

Índice de la colección de la matriz collections de la que se quitó el elemento.

Excepciones

Se ha eliminado al menos una de las instancias de BlockingCollection<T>.

El argumento collections es null.

El recuento de collections es mayor que el tamaño máximo de 62 para STA y 63 para MTA.

El argumento collections es una matriz de longitud 0 o contiene un elemento nulo o se ha llamado a CompleteAdding() en la colección.

Al menos una de las colecciones subyacentes se modificó fuera de su instancia BlockingCollection<T>.

Comentarios

Una llamada a TakeFromAny puede bloquearse hasta que un elemento esté disponible para quitarse.

Consulte también

Se aplica a

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

Source:
BlockingCollection.cs
Source:
BlockingCollection.cs
Source:
BlockingCollection.cs

Toma un elemento de cualquiera de las instancias de BlockingCollection<T> especificadas observando el token de cancelación indicado.

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>[]

Matriz de colecciones.

item
T

Elemento que se quitó de una de las colecciones.

cancellationToken
CancellationToken

Token de cancelación que se va a observar.

Devoluciones

Índice de la colección de la matriz collections de la que se quitó el elemento.

Excepciones

Al menos una de las colecciones subyacentes se modificó fuera de su instancia BlockingCollection<T>.

El argumento collections es null.

El recuento de collections es mayor que el tamaño máximo de 62 para STA y 63 para MTA.

El argumento collections es una matriz de longitud 0 o contiene un elemento nulo o se ha llamado a CompleteAdding() en la colección.

Se ha eliminado al menos una de las instancias de BlockingCollection<T>.

Comentarios

Una llamada a TakeFromAny puede bloquearse hasta que un elemento esté disponible para quitarse. El método devolverá al principio una operationCanceledException si se cancela el token.

Consulte también

Se aplica a