using System.Diagnostics;
using System.Threading.Tasks;
using System.Collections;
using System.Collections.Generic;
public static void Main()
PizzaTask().GetAwaiter().GetResult();
static async Task PizzaTask()
Stopwatch stopwatch = new Stopwatch();
Console.WriteLine("Started preparing " + totalPizza + " pizza");
var tasks = Enumerable.Range(0, totalPizza).Select(i => MakePizza(i));
await Task.WhenAll(tasks);
Console.WriteLine("Finished preparing " + totalPizza + " pizza");
Console.WriteLine("Elapsed time: " + stopwatch.Elapsed.TotalSeconds);
static async Task MakePizza(int n)
static async Task PreparePizza(int n)
Console.WriteLine("Start preparing pizza " + n);
Console.WriteLine("Finished preparing pizza " + n);
static async Task BakePizza(int n)
Console.WriteLine("Start baking pizza " + n);
Console.WriteLine("Finished baking pizza " + n);