CRT 디버그 힙
이 항목은 다음 언어에 적용됩니다.
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
네이티브 전용 |
||||
Pro, Premium 및 Ultimate |
네이티브 전용 |
이 항목에서는 CRT 디버그 힙에 대해 자세히 설명합니다.
단원 내용
메모리 관리 및 디버그 힙
힙 함수의 디버그 버전에 대해 설명합니다. 이들 함수는 가장 다루기 힘든 두 가지 메모리 할당 문제, 즉 할당된 버퍼의 끝 부분을 덮어쓰는 문제와 불필요한 할당을 해제할 수 없는 메모리 누수 문제에 대한 해결 방법을 제시합니다.디버그 힙의 블록 형식
다섯 가지 할당 형식에 지정되는, 디버그 힙의 메모리 블록에 대해 설명합니다. 누수 탐지와 상태 보고 등의 목적에 따라 이러한 할당 형식을 다르게 추적하고 보고합니다.디버그 힙
디버그 힙의 사용 방법에 대한 정보를 제공합니다. 이러한 정보에는 디버그 버전으로 확인되는 호출, 메모리 블록 해제 시에 발생하는 상황, 코드 내에서 액세스해야 할 디버그 기능, _crtDbgFlag 비트 필드를 변경하고 플래그에 새로운 상태를 만드는 단계, 자동 누수 탐지를 설정하고 _CRT_BLOCK 형식의 블록 확인을 해제하는 코드 예제 등이 있습니다.C++에서 디버그 힙 사용
C++ new 및 delete 연산자의 디버그 버전과 _CRTDBG_MAP_ALLOC사용 효과에 대해 설명합니다.힙 상태 보고 함수
힙 상태에 대한 요약 스냅숏을 포착하는 데 사용할 수 있는 _CrtMemState 구조체에 대해 설명합니다. 이 항목에서는 힙의 상태와 내용을 보고하고 그 정보를 사용하여 메모리 누수 등의 문제를 찾아내는 CRT 함수도 소개합니다.힙 할당 요청 추적
잘못된 특정 힙 할당 호출을 식별하는 방법에 대해 설명합니다.
관련 단원
- CRT 디버깅 기술
CRT 디버그 라이브러리 사용, 보고서 매크로, malloc와 _malloc_dbg의 차이, 디버그 후크 함수 작성, CRT 디버그 힙 등과 같은 C 런타임 라이브러리의 디버깅 기술에 대해 설명합니다.