gpt4 book ai didi

c# - 如何运行多个线程并等待完成所有线程

转载 作者:太空狗 更新时间:2023-10-30 00:03:25 24 4
gpt4 key购买 nike

我想编写一个运行多个线程的方法,并且我希望在我的方法结束之前使用 async/await 确保所有线程都已完成。我该怎么做?

请考虑这个伪代码:

private async void SomeWork()
{
var a = doWork1();
var b = doWork2();
var c = doWork3();
var d = doWork4();
...
//I want to assure that all of above thread are complete using `C#-5` new features
}

我该怎么做?

最佳答案

执行此操作的async 方法是让您的方法返回一个Task,然后该方法的调用者将await(或Wait()) 它。您的方法可能如下所示:

private async Task SomeWork()
{
var a = doWork1();
var b = doWork2();
var c = doWork3();
var d = doWork4();
...
await Task.WhenAll(a, b, c, d);
}

关于c# - 如何运行多个线程并等待完成所有线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9870348/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com