BlockingCollection<T>.TakeFromAny Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Tar ett objekt från någon av de angivna BlockingCollection<T> instanserna.
Överlagringar
| Name | Description |
|---|---|
| TakeFromAny(BlockingCollection<T>[], T) |
Tar ett objekt från någon av de angivna BlockingCollection<T> instanserna. |
| TakeFromAny(BlockingCollection<T>[], T, CancellationToken) |
Tar ett objekt från någon av de angivna BlockingCollection<T> instanserna medan du observerar den angivna annulleringstoken. |
TakeFromAny(BlockingCollection<T>[], T)
Tar ett objekt från någon av de angivna BlockingCollection<T> instanserna.
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
Parametrar
- collections
- BlockingCollection<T>[]
Matrisen med samlingar.
- item
- T
Objektet som togs bort från en av samlingarna.
Returer
Indexet för samlingen i matrisen collections som objektet togs bort från.
Undantag
Minst en av BlockingCollection<T> instanserna har tagits bort.
Argumentet collections är null.
Antalet collections är större än den maximala storleken på 62 för STA och 63 för MTA.
Argumentet collections är en 0-längdsmatris eller innehåller ett null-element eller CompleteAdding() har anropats i samlingen.
Minst en av de underliggande samlingarna ändrades utanför instansen BlockingCollection<T> .
Kommentarer
Ett anrop till TakeFromAny kan blockeras tills ett objekt är tillgängligt för att tas bort.
Se även
- Tråd-säkra samlingar
- översikt över BlockingCollection
Gäller för
TakeFromAny(BlockingCollection<T>[], T, CancellationToken)
Tar ett objekt från någon av de angivna BlockingCollection<T> instanserna medan du observerar den angivna annulleringstoken.
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
Parametrar
- collections
- BlockingCollection<T>[]
Matrisen med samlingar.
- item
- T
Objektet som togs bort från en av samlingarna.
- cancellationToken
- CancellationToken
En annulleringstoken att observera.
Returer
Indexet för samlingen i matrisen collections som objektet togs bort från.
Undantag
Avbryts CancellationToken .
Minst en av de underliggande samlingarna ändrades utanför instansen BlockingCollection<T> .
Argumentet collections är null.
Antalet collections är större än den maximala storleken på 62 för STA och 63 för MTA.
Argumentet collections är en 0-längdsmatris eller innehåller ett null-element, eller CompleteAdding() har anropats i samlingen.
Minst en av BlockingCollection<T> instanserna har tagits bort.
Kommentarer
Ett anrop till TakeFromAny kan blockeras tills ett objekt är tillgängligt för att tas bort. Metoden returneras tidigt med en OperationCanceledException om token avbryts.
Se även
- Tråd-säkra samlingar
- översikt över BlockingCollection