C++ 应用程序不会终止
Posted
技术标签:
【中文标题】C++ 应用程序不会终止【英文标题】:C++ application won't terminate 【发布时间】:2012-08-10 12:48:30 【问题描述】:我有一个 C++ 应用程序,当它收到关闭命令时需要关闭它。收到此命令后,它应该终止所有线程,清理所有内容并优雅退出。
问题是我的应用程序没有关闭,它只是在收到命令时保持打开状态。
我认为问题在于收到关闭命令时我没有完成所有线程和句柄,但是由于我的应用程序非常大,我在定位哪个线程或句柄持有它时遇到问题起来。
有没有办法发现哪个线程或句柄没有完成?
PS:我在 Windows XP SP3 中使用 Visual Studio 2005。
【问题讨论】:
使用调试器。 Debug + Windows + Threads 查看正在运行的线程。悬停或双击一个以检查其堆栈。 在调试器中附加到进程并看看?但是,当您的主线程退出时,该进程应该终止,您确定这正在发生吗? 【参考方案1】:我已经在调试中运行了我的应用程序,并使用线程窗口来查看谁没有被关闭。我已经更新了我的代码,现在一切正常。
谢谢大家的回答。
【讨论】:
以上是关于C++ 应用程序不会终止的主要内容,如果未能解决你的问题,请参考以下文章
如何制作一个不刷新 std::cout 的简单 C++ 程序