【发布时间】:2015-06-30 03:15:40
【问题描述】:
我碰巧从 msdn 中读到了 Semaphore 类示例,如下所示: https://msdn.microsoft.com/en-us/library/system.threading.semaphore%28v=vs.110%29.aspx
这是一个控制台应用程序,但是让我感到困惑的是,即使主线程退出,子线程也能工作。
据我了解,当主线程/进程退出时,所有子线程都会终止,这就是为什么我们通常会在主线程停止之前发出信号并等待子线程完成。 我错了还是由于参考而在.net中改变了行为?
【问题讨论】:
-
这真的不是关于主线程和子线程,而是关于前台和后台线程。任何活动的前台线程都会使进程保持活动状态。
标签: c# multithreading