要實現等待所有異步任務完成,可以使用Task.WhenAll方法。這個方法接受一個Task數組作為參數,然后返回一個新的Task,該任務在所有輸入任務都完成時完成。
示例代碼如下:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
Task task1 = Task.Delay(1000);
Task task2 = Task.Delay(2000);
Task task3 = Task.Delay(3000);
// 等待所有任務完成
await Task.WhenAll(task1, task2, task3);
Console.WriteLine("All tasks have completed.");
}
}
在上面的示例中,我們創建了三個異步任務task1、task2和task3,并使用Task.WhenAll方法等待它們全部完成。一旦所有任務完成,程序將輸出"All tasks have completed"。