I'm benchmarking/optimizing a slow C++ application, and in taking some stackshots I found that the release build of my application is using the debug heap, as some of the stack traces found would indicate:
ntdll.dll!string "Enabling heap debug options\n"() + 0x11056 bytes
This is a 64-bit application running on Windows 7. I see two or three other complaints about this problem in the exact same environment online, but without any responses.
Does anyone have a clue why Windows or Visual Studio would be using the debug heap for a release build C++ project?
The debug heap is used when a program is run under debugger (profilers often manifest themselves as debuggers). In order to bypass it the program should be started without debugging, then the debugger should be attached to a running process.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With