PlatformExtensions.RunWithMaxDegreeOfParallelismAsync<T> - метод

Выполняет асинхронную обработку элементов с ограничением на максимальное количество параллельных задач.

Definition

Пространство имён: Tessa.Platform
Сборка: Tessa (в Tessa.dll) Версия: 3.6.0.23
C#
public static Task RunWithMaxDegreeOfParallelismAsync<T>(
	this IEnumerable<T> items,
	int maxDegreeOfParallelism,
	Func<T, CancellationToken, Task> taskFactory,
	CancellationToken cancellationToken = default
)

Параметры

items  IEnumerable<T>
Обрабатываемые элементы.
maxDegreeOfParallelism  Int32
Максимальное количество параллельных задач. Новые задачи запускаются по мере того, как текущие задачи завершаются.
taskFactory  Func<T, CancellationToken, Task>
Асинхронная задача, которая обрабатывает указанный элемент.
cancellationToken  CancellationToken  (Optional)
Объект, посредством которого можно отменить асинхронную задачу.

Параметры типа

T
Тип элементов в коллекции.

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

Task
Задача, содержащая

Примечание об использовании

В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа IEnumerable<T>. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе Методы расширения (Visual Basic) или Методы расширения (Руководство по программированию в C#).

См. также