c# - 多线程同时阻塞主线程

标签 c# multithreading

如何同时启动 2 个或更多线程并阻塞主线程直到其他线程完成?

最佳答案

从主线程调用Thread.Join在每个其他线程上。

(编辑:现在您已经指定了 C#,不需要与平台无关的注释。)

例如:

Thread t1 = new Thread(FirstMethod).Start();
Thread t2 = new Thread(SecondMethod).Start();

t1.Join();
t2.Join();

如果您只想等到他们全部 完成,那么调用Join 的顺序并不重要。 (如果你想在它们中的任何完成时继续,你需要进入等待句柄的领域。)

关于c# - 多线程同时阻塞主线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1427559/

相关文章:

c++ - 使用共享指针来自另一个线程的纯虚拟调用

c# - List<Interface> 执行顺序

c# - LINQ to XML 嵌套元素查询

.net - 应用程序如何在多核机器上运行?

java - 在 ReentrantReadWriteLock 中是否有 WriteLock 优先于 ReadLock

linux - Linux中用户级线程的抢占式调度是如何实现的?

c# - 设置元 :resourcekey on page load

c# - 在 C# 中填充 Word 2007 模板的最佳方法是什么?

c# - 如何获取 dbpedia 中的所有类别?

multithreading - 异步调用的任务限制?