温馨提示×

c#异步线程如何实现等待所有任务

c#
小樊
83
2024-06-24 10:23:25
栏目: 编程语言

要实现等待所有异步任务完成,可以使用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"。

0