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.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
Элемент, удаленный из одной из коллекций.
Возвращаемое значение
Индекс коллекции в массиве collections , из которого был удален элемент.
Исключения
По крайней мере один из BlockingCollection<T> экземпляров был удален.
Аргумент collections имеет значение NULL.
collections Число больше максимального размера 62 для STA и 63 для MTA.
Аргумент collections представляет собой массив длиной 0 или содержит пустой элемент или CompleteAdding() вызывается в коллекции.
По крайней мере одна из базовых коллекций была изменена за пределами своего BlockingCollection<T> экземпляра.
Комментарии
Вызов TakeFromAny может блокироваться до тех пор, пока элемент не будет удален.
См. также раздел
Применяется к
TakeFromAny(BlockingCollection<T>[], T, CancellationToken)
- Исходный код:
- BlockingCollection.cs
- Исходный код:
- BlockingCollection.cs
- Исходный код:
- 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
Элемент, удаленный из одной из коллекций.
- cancellationToken
- CancellationToken
Маркер отмены для наблюдения.
Возвращаемое значение
Индекс коллекции в массиве collections , из которого был удален элемент.
Исключения
По крайней мере одна из базовых коллекций была изменена за пределами своего BlockingCollection<T> экземпляра.
Аргумент collections имеет значение NULL.
collections Число больше максимального размера 62 для STA и 63 для MTA.
Аргумент collections представляет собой массив длиной 0 или содержит пустой элемент или CompleteAdding() вызывается в коллекции.
По крайней мере один из BlockingCollection<T> экземпляров был удален.
Комментарии
Вызов TakeFromAny может блокироваться до тех пор, пока элемент не будет удален. Метод возвращается рано с помощью OperationCanceledException, если маркер отменен.