<PackageReference Include="AsyncEnumerator" Version="4.0.1" />

Dasync.Collections.ForEachAsyncExtensions

public static class ForEachAsyncExtensions
Enables asynchronous 'foreach' enumeration over an IAsyncEnumerable
namespace Dasync.Collections { public static class ForEachAsyncExtensions { public static async Task ForEachAsync<T>(this IAsyncEnumerable<T> enumerable, Action<T> action, CancellationToken cancellationToken = default(CancellationToken)); public static async Task ForEachAsync<T>(this IAsyncEnumerator<T> enumerator, Action<T> action); public static async Task ForEachAsync<T>(this IAsyncEnumerable<T> enumerable, Action<T, long> action, CancellationToken cancellationToken = default(CancellationToken)); public static async Task ForEachAsync<T>(this IAsyncEnumerator<T> enumerator, Action<T, long> action); public static async Task ForEachAsync<T>(this IAsyncEnumerable<T> enumerable, Func<T, Task> action, CancellationToken cancellationToken = default(CancellationToken)); public static async Task ForEachAsync<T>(this IAsyncEnumerator<T> enumerator, Func<T, Task> action); public static async Task ForEachAsync<T>(this IAsyncEnumerable<T> enumerable, Func<T, long, Task> action, CancellationToken cancellationToken = default(CancellationToken)); public static async Task ForEachAsync<T>(this IAsyncEnumerator<T> enumerator, Func<T, long, Task> action); } }