static async Task GetSyncNoWaitIterator <T>(IEnumerable <T> source, IAsyncConsumer <T> consumer) { foreach (T item in source) { consumer.YieldAsync(item); } }
public static List <Task> FeedFast <T>(this IAsyncConsumer <T> consumer, IEnumerable <T> source) { List <Task> tasks = new List <Task>(); foreach (var item in source) { tasks.Add(consumer.YieldAsync(item)); } return(tasks); }
private static async Task FeedAsync <T>(this IAsyncEnumerable <T> source, IAsyncConsumer <T> consumer) { if (source == null) { throw new ArgumentNullException("source"); } if (consumer == null) { throw new ArgumentNullException("consumer"); } await source.ForEachAsync(item => consumer.YieldAsync(item)); }