Поделиться через


BlockingCollection<T>.AddToAny Метод

Определение

Добавляет указанный элемент в один из указанных экземпляров BlockingCollection<T>.

Перегрузки

AddToAny(BlockingCollection<T>[], T)

Добавляет указанный элемент в один из указанных экземпляров BlockingCollection<T>.

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

Добавляет указанный элемент в один из указанных экземпляров BlockingCollection<T>.

AddToAny(BlockingCollection<T>[], T)

Исходный код:
BlockingCollection.cs
Исходный код:
BlockingCollection.cs
Исходный код:
BlockingCollection.cs

Добавляет указанный элемент в один из указанных экземпляров BlockingCollection<T>.

public:
 static int AddToAny(cli::array <System::Collections::Concurrent::BlockingCollection<T> ^> ^ collections, T item);
public static int AddToAny (System.Collections.Concurrent.BlockingCollection<T>[] collections, T item);
static member AddToAny : System.Collections.Concurrent.BlockingCollection<'T>[] * 'T -> int
Public Shared Function AddToAny (collections As BlockingCollection(Of T)(), item As T) As Integer

Параметры

collections
BlockingCollection<T>[]

Массив коллекций.

item
T

Элемент, добавляемый в одну из коллекций.

Возвращаемое значение

Индекс коллекции в массиве collections, в которую добавляется элемент.

Исключения

Хотя бы один из экземпляров BlockingCollection<T> был удален.

Аргумент collections имеет значение NULL.

Число collections больше, чем максимальный размер (62 для STA и 63 для MTA).

collections аргумент является массивом длины 0, содержит элемент null или хотя бы одна коллекция была помечена как готовая для добавления.

Хотя бы одна базовая коллекция не приняла элемент.

Комментарии

Если при инициализации BlockingCollection<T> всех экземпляров была указана ограниченная емкость, вызов AddToAny может блокироваться, пока в одной из коллекций не будет доступно место для хранения указанного элемента.

См. также раздел

Применяется к

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

Исходный код:
BlockingCollection.cs
Исходный код:
BlockingCollection.cs
Исходный код:
BlockingCollection.cs

Добавляет указанный элемент в один из указанных экземпляров BlockingCollection<T>.

public:
 static int AddToAny(cli::array <System::Collections::Concurrent::BlockingCollection<T> ^> ^ collections, T item, System::Threading::CancellationToken cancellationToken);
public static int AddToAny (System.Collections.Concurrent.BlockingCollection<T>[] collections, T item, System.Threading.CancellationToken cancellationToken);
static member AddToAny : System.Collections.Concurrent.BlockingCollection<'T>[] * 'T * System.Threading.CancellationToken -> int
Public Shared Function AddToAny (collections As BlockingCollection(Of T)(), item As T, cancellationToken As CancellationToken) As Integer

Параметры

collections
BlockingCollection<T>[]

Массив коллекций.

item
T

Элемент, добавляемый в одну из коллекций.

cancellationToken
CancellationToken

Маркер отмены, который следует контролировать.

Возвращаемое значение

Индекс коллекции в массиве collections, в которую добавляется элемент.

Исключения

Хотя бы одна базовая коллекция не приняла элемент.

Аргумент collections имеет значение NULL.

Число collections больше, чем максимальный размер (62 для STA и 63 для MTA).

collections аргумент является массивом длины 0, содержит элемент null или хотя бы одна коллекция была помечена как готовая для добавления.

По крайней мере один из экземпляров BlockingCollection<T> был удален или CancellationTokenSource, создавший cancellationToken, был удален.

Комментарии

Если при инициализации BlockingCollection<T> всех экземпляров была указана ограниченная емкость, вызов AddToAny может блокироваться, пока в одной из коллекций не будет доступно место для хранения указанного элемента. Этот метод может вернуться перед добавлением элемента в любую коллекцию, если cancellationToken отменяется до того, как будет доступно пространство.

См. также раздел

Применяется к