如题,在C#&.NET Core(.NET 6)应用程序编程开发中,如何创建多线程并等待所有线程任务都执行完成呢?
比如有类似如下的示例程序:
想在主函数的for循环中计算在20s的时间里,算出40个结果,也就是2个结果同时打印,有啥方法是可以这个样子?
for
Rector
2022-02-19 提问
在C#编程中,可以使用多种方式实现多线程,这里使用了Parallel.For(),先看运行效果:
Parallel.For()
为了演示,示例中将Sleep时间设置成了200毫秒。
Sleep
200
示例代码:
2022-02-19 回答
除了使用Parallel.For()外,还可以使用Task.Factory.StartNew()来创建新的线程,然后调用Task.WaitAll()方法来等待所有线程都执行完成,示例如下:
Task.Factory.StartNew()
Task.WaitAll()
码龄: 3168天
专注.NET/.NET Core