Запрос кучи из приложения C ++ - PullRequest
1 голос
/ 24 июня 2019

Я хочу устранить утечки памяти в собственном приложении C ++, которое использует C ++ Run-Time Library.Могу ли я легко узнать количество выделенных блоков (и, возможно, общий размер)?

Ответы [ 3 ]

2 голосов
/ 24 июня 2019

Вы можете попробовать HeapWalk в Heap API , сторонние библиотеки не нужны.

1 голос
/ 24 июня 2019

Вы можете попробовать Массив от Valgrind.

Массив - это профилировщик кучи. Он измеряет, сколько кучи памяти использует ваша программа. [...] Кроме того, существуют определенные утечки пространства, которые не обнаруживаются традиционными средствами проверки утечек,

0 голосов
/ 25 июня 2019

В Windows вы можете использовать Dr Memory, в Linux Valgrind. Можно также использовать утечку sanitizer с gcc на linux или clang с -fsanitize = leak, но вам также понадобится некоторая поддержка времени выполнения (вам нужно обратиться к некоторым другим библиотекам для gcc или clang sanitizers).

...