_CrtDumpMemoryLeaks
(디버그 버전에만 해당)에서 메모리 누수가 발생 한 경우 덤프에서 디버그 힙의 모든 메모리를 차단 합니다.
int _CrtDumpMemoryLeaks( void );
반환 값
_CrtDumpMemoryLeaks메모리 누수를 찾을 수 있으면 TRUE를 반환 합니다.그렇지 않으면 함수는 FALSE를 반환 합니다.
설명
_CrtDumpMemoryLeaks 함수를 프로그램 실행을 시작한 이후로 메모리 누수가 발생 했는지 확인 합니다.누수가 발견 되 면 모든 힙에 있는 개체에 대 한 디버그 헤더 정보를 사용자가 읽을 수 있는 형태로 덤프 됩니다.때 _DEBUG 정의 되지 않은, 호출 하려면 _CrtDumpMemoryLeaks 전처리 하는 동안 제거 됩니다.
_CrtDumpMemoryLeaks응용 프로그램에 의해 할당 된 메모리를 모두 해제 된 확인 하려면 프로그램 실행의 끝에 자주 호출 됩니다.함수가 자동으로 프로그램 종료 시 켰을 때 호출할 수 있습니다의 _CRTDBG_LEAK_CHECK_DF 비트 필드의의 _crtDbgFlag 플래그를 사용 하는 _CrtSetDbgFlag 함수.
_CrtDumpMemoryLeaks호출 _CrtMemCheckpoint 힙의 현재 상태를 얻기 위해 다음 상태가 해제 되지 않은 블록을 검사 하 고 있습니다.에 unfreed 블록이 발견 되 면 _CrtDumpMemoryLeaks 호출 _CrtMemDumpAllObjectsSince 프로그램 실행을 시작할 힙에서 할당 된 모든 개체에 대 한 정보를 덤프 합니다.
기본적으로 내부 C 실행 시간 블록 (_CRT_BLOCK) 메모리 덤프 작업에 포함 되지 않습니다._CrtSetDbgFlag 설정 하려면 함수를 사용할 수는 _CRTDBG_CHECK_CRT_DF 의 비트 _crtDbgFlag 이러한 블록 누수 감지 프로세스에 포함 합니다.
힙 상태 함수에 대 한 자세한 내용은 및 _CrtMemState 구조, 참조 하십시오 힙 상태 보고 함수.메모리 블록 할당, 초기화 및 기본 힙의 디버그 버전에서 관리 하는 방법에 대 한 자세한 내용은 참조 하십시오. 메모리 관리 및 디버그 힙.
요구 사항
루틴 |
필수 헤더 |
---|---|
_CrtDumpMemoryLeaks |
<crtdbg.h> |
더 많은 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
라이브러리
디버그 버전의 C 런타임 라이브러리 만 합니다.
예제
샘플을 사용 하는 방법에 대 한 _CrtDumpMemoryLeaks를 참조 하십시오 crt_dbg1.
해당 .NET Framework 항목
해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.