如何让前台线程等待所有后台(子)线程在C#中完成?我需要从队列(数据库)获取挂起作业列表,启动一个新线程来执行每个作业,最后等待所有子线程完成.如何在C#中做到这一点?提前致谢.
您可以将每个启动的线程存储在一个数组中.然后,当您需要等待它们时,在循环中的数组中的每个线程上调用Join方法.
Thread child = new Thread(...);
Threads.Add(child);
child.Start()
...
foreach(Thread t in Threads)
{
t.Join();
}
Run Code Online (Sandbox Code Playgroud)
HTH