В Windows с Visual Studio вы можете использовать функции CRT Debug Heap ._CrtMemDumpStatistics
может быть использовано для печати полезной статистики._CrtMemDumpAllObjectsSince
перечисляет все объекты, расположенные между контрольными точками.Есть более полезные вещи, такие как обнаружение утечки памяти (_CrtDumpMemoryLeaks
).Также возможно сделать снимки с _CrtMemCheckpoint
и сравнить различия с _CrtMemDifference
позже.
Также возможно переопределить new
, чтобы получить более подробную информацию с функциями отладки CRT.
#ifdef _DEBUG
#define new new(_CLIENT_BLOCK, __FILE__, __LINE__)
#endif
Примечание: Это только отслеживает распределения CRT.Чтобы получить всю информацию о памяти процесса, вы можете использовать GetProcessMemoryInfo
.