Visual Studio 2010上的VC++:使用调试堆发布版本

Mah*_*dsi 5 c++ heap performance visual-studio

我标杆/优化一个缓慢的C++应用程序,并采取了一些stackshots我发现我的应用程序的发布版本使用调试堆,一些发现将指示堆栈跟踪:

ntdll.dll!string "Enabling heap debug options\n"()  + 0x11056 bytes 
Run Code Online (Sandbox Code Playgroud)

这是在Windows 7上运行的64位应用程序.我在网上完全相同的环境中看到有关此问题的两三个其他投诉,但没有任何回复.

有没有人知道为什么Windows或Visual Studio会将调试堆用于发布版本C++项目?

sha*_*oth 6

在调试器下运行程序时使用调试堆(分析器通常表现为调试器).为了绕过它,程序应该在没有调试的情况下启动,然后调试器应该附加到正在运行的进程.