private async Task DismissSomeProductsAsync(CancellationToken stoppingToken) { var products = await Warehouse.GetActiveProductsAsync(); var tasks = products.Shuffle().Take(HowMany(products)) .TapList(l => logger.LogInformation($"Dismiss {l.Count()} products")) .Select(product => Warehouse.DismissAsync(product)); await Task.WhenAll(tasks); }