static async Task test()
{
Task[] tasks = new Task[3];
tasks[0] = wait();
tasks[1] = wait2();
tasks[2] = wait3();
await Task.WhenAll(tasks);
Console.WriteLine("main");
Console.ReadKey();
}
public static async Task wait()
{
await Task.Delay(2000);
Console.WriteLine("Wait 2000 ms");
}
public static async Task wait2()
{
await Task.Delay(3000);
Console.WriteLine("Wait 3000 ms");
}
public static async Task wait3()
{
await Task.Delay(4000);
Console.WriteLine("Wait 4000 ms");
}