_CrtDumpMemoryLeaks
Сбрасывает все блоки памяти в отладочной куче в случае утечки памяти (только в отладочной версии).
Синтаксис
int _CrtDumpMemoryLeaks( void );
Возвращаемое значение
_CrtDumpMemoryLeaks
возвращается TRUE
, если обнаружена утечка памяти. В противном случае функция возвращает значение FALSE
.
Замечания
Функция _CrtDumpMemoryLeaks
определяет, произошла ли утечка памяти после начала выполнения программы. При обнаружении утечки данные заголовка отладки для всех объектов в куче записываются в форме, которую пользователь может прочитать. Если _DEBUG
это не определено, вызовы _CrtDumpMemoryLeaks
удаляются во время предварительной обработки.
Функция _CrtDumpMemoryLeaks
часто вызывается в конце выполнения программы, чтобы проверить, освобождена ли вся выделенная приложением память. Функцию можно вызывать автоматически при завершении программы, включив _CRTDBG_LEAK_CHECK_DF
битовое поле _crtDbgFlag
флага _CrtSetDbgFlag
с помощью функции.
_CrtDumpMemoryLeaks
вызовы _CrtMemCheckpoint
для получения текущего состояния кучи, а затем сканируют состояние для блоков, которые не были освобождены. При обнаружении нечастого блока вызовы _CrtMemDumpAllObjectsSince
данных дампа для всех объектов, _CrtDumpMemoryLeaks
выделенных в куче с начала выполнения программы.
По умолчанию внутренние блоки времени выполнения C (_CRT_BLOCK
) не включаются в операции дампа памяти. Функцию _CrtSetDbgFlag
можно использовать для включения _CRTDBG_CHECK_CRT_DF
_crtDbgFlag
этих блоков в процесс обнаружения утечки.
Дополнительные сведения о функциях состояния кучи и _CrtMemState
структуре см. в разделе "Отчеты о состоянии кучи". Дополнительные сведения о выделении, инициализации и управлении блоками памяти в отладочной версии базовой кучи см. в сведениях об отладочной куче CRT.
Требования
Маршрут | Обязательный заголовок |
---|---|
_CrtDumpMemoryLeaks |
<crtdbg.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Библиотеки
Только отладочные версии библиотек времени выполнения языка C.
Пример
Пример использования _CrtDumpMemoryLeaks
см. в разделе crt_dbg1
.