在调试Visual Studio 2008程序时,我希望获得堆调试信息,如手册页上所述,_CrtDumpMemoryLeaks()
和相关页面。 但是,我没有得到任何格式的调试信息:
{4868} normal block at 0x04B82DF0, 69 bytes long.
Data: < - 4 > B0 B6 F1 00 2D 00 00 00 34 00 00 00 01 00 00 00
许多人问为什么他们在此转储中看不到文件名/行号,但我什至没有文件名/行号的转储。
这特别令人好奇,因为我回忆起在项目早期甚至需要它之前就"免费"获得它。
事实证明,当您调用exit()
时,该输出就会出现,但是我已经将程序更改为调用ExitProcess()
,而不是经历杀死所有本来会继续运行的子线程的麻烦。
我添加了代码来终止我的子线程,现在只需调用exit()
,即可获得输出。