【发布时间】:2010-02-10 15:21:39
【问题描述】:
我注意到当我在关闭主窗口后以调试模式运行 VS.Net 2008 时,调试模式会自动停止。但最近我一直在使用线程并注意到在主窗口关闭后 VS.Net 继续保持调试模式。只是想知道这是预期的还是我做错了什么。同样在 TaskManager 中,即使在 MainWindow 关闭后,该过程似乎仍然存在。如果您有任何想法,请告诉我。 谢谢 否
【问题讨论】:
标签: wpf multithreading
我注意到当我在关闭主窗口后以调试模式运行 VS.Net 2008 时,调试模式会自动停止。但最近我一直在使用线程并注意到在主窗口关闭后 VS.Net 继续保持调试模式。只是想知道这是预期的还是我做错了什么。同样在 TaskManager 中,即使在 MainWindow 关闭后,该过程似乎仍然存在。如果您有任何想法,请告诉我。 谢谢 否
【问题讨论】:
标签: wpf multithreading
您的线程可能有IsBackground = false。如果仍有非后台线程在运行,则阻止进程终止。所以UI线程并不是唯一可以保持进程存活的线程。
要解决这个问题,要么将你的工作线程的 IsBackground 设置为 true(如果你很高兴 .NET 运行时在主窗口关闭时杀死它们),或者你自己终止它们(例如在关闭事件期间),如果您想确保它们以可预测的方式关闭。
【讨论】: