/
aprogrammer
/
dotnet-docs
Обзор
Документация
Войти
/
aprogrammer
/
dotnet-docs
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
docs/standard/parallel-programming/snippets/cs/whenall1.cs
30 строк
820 B
Tom Dykstra
Update snippets for NRT (#28615)
11 мар 2022, 00:02
Не верифицирован
11 мар 2022, 00:02
aff1571
Код
Авторство
О чём код?
using System.Collections.Generic; using System; using System.Threading.Tasks; public class WhenAllExample { public static async Task Main() { var tasks = new List<Task<int>>(); for (int ctr = 1; ctr <= 10; ctr++) { int baseValue = ctr; tasks.Add(Task.Factory.StartNew(b => (int)b! * (int)b, baseValue)); } var results = await Task.WhenAll(tasks); int sum = 0; for (int ctr = 0; ctr <= results.Length - 1; ctr++) { var result = results[ctr]; Console.Write($"{result} {((ctr == results.Length - 1) ? "=" : "+")} "); sum += result; } Console.WriteLine(sum); } } // The example displays the similar output: // 1 + 4 + 9 + 16 + 25 + 36 + 49 + 64 + 81 + 100 = 385