BlockingCollection<T>.TakeFromAny Méthode

Définition

Prend un élément de l’une des instances spécifiées BlockingCollection<T> .

Surcharges

Nom Description
TakeFromAny(BlockingCollection<T>[], T)

Prend un élément de l’une des instances spécifiées BlockingCollection<T> .

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

Prend un élément de l’une des instances spécifiées BlockingCollection<T> lors de l’observation du jeton d’annulation spécifié.

TakeFromAny(BlockingCollection<T>[], T)

Prend un élément de l’une des instances spécifiées 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);
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

Paramètres

collections
BlockingCollection<T>[]

Tableau de collections.

item
T

Élément supprimé de l’une des collections.

Retours

Index de la collection dans le collections tableau à partir duquel l’élément a été supprimé.

Exceptions

Au moins une des BlockingCollection<T> instances a été supprimée.

L’argument collections est null.

Le nombre est collections supérieur à la taille maximale de 62 pour STA et 63 pour MTA.

L’argument collections est un tableau de longueur 0 ou contient un élément Null ou CompleteAdding() a été appelé sur la collection.

Au moins une des collections sous-jacentes a été modifiée en dehors de son BlockingCollection<T> instance.

Remarques

Un appel à TakeFromAny peut bloquer jusqu’à ce qu’un élément soit disponible pour être supprimé.

Voir aussi

S’applique à

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

Prend un élément de l’une des instances spécifiées BlockingCollection<T> lors de l’observation du jeton d’annulation spécifié.

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);
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

Paramètres

collections
BlockingCollection<T>[]

Tableau de collections.

item
T

Élément supprimé de l’une des collections.

cancellationToken
CancellationToken

Jeton d’annulation à observer.

Retours

Index de la collection dans le collections tableau à partir duquel l’élément a été supprimé.

Exceptions

L’opération CancellationToken est annulée.

Au moins une des collections sous-jacentes a été modifiée en dehors de son BlockingCollection<T> instance.

L’argument collections est null.

Le nombre est collections supérieur à la taille maximale de 62 pour STA et 63 pour MTA.

L’argument collections est un tableau de longueur 0 ou contient un élément Null, ou CompleteAdding() a été appelé sur la collection.

Au moins une des BlockingCollection<T> instances a été supprimée.

Remarques

Un appel à TakeFromAny peut bloquer jusqu’à ce qu’un élément soit disponible pour être supprimé. La méthode retourne tôt avec une OpérationCanceledException si le jeton est annulé.

Voir aussi

S’applique à