Heap di debug CRT
Le informazioni contenute in questo argomento sono valide per:
Edizione |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
Solo nativo |
||||
Pro, Premium e Ultimate |
Solo nativo |
In questa sezione vengono fornite informazioni dettagliate sull'heap di debug CRT.
In questa sezione
Gestione della memoria e heap di debug
Vengono descritte le versioni di debug delle funzioni heap. Queste funzioni risolvono due dei problemi di allocazione della memoria più difficili da gestire: la sovrascrittura della fine di un buffer allocato e la perdita di memoria, ovvero la mancata liberazione delle allocazioni quando non più necessarie.Tipi di blocchi sull'heap di debug
Vengono descritti i cinque tipi di allocazione ai quali vengono assegnati i blocchi di memoria nell'heap di debug. Le modalità con cui questi tipi di allocazione vengono registrati e inseriti in report variano a seconda della finalità: rilevamento di perdite o report sullo stato.Heap di debug
Vengono fornite informazioni sull'utilizzo dell'heap di debug. Vengono fornite informazioni sui seguenti aspetti: le chiamate che si risolvono in versioni di debug, le operazioni eseguite quando si libera un blocco di memoria, le funzionalità di debug a cui è necessario accedere dall'interno del codice, la procedura per la modifica dei campi di bit _crtDbgFlag per creare un nuovo stato per il flag e un esempio di codice che illustra l'attivazione del rilevamento automatico di perdite e la disattivazione del controllo di blocchi di tipo _CRT_BLOCK.Heap di debug da C++
Vengono discussi le versioni di debug degli operatori di C++ new e delete e gli effetti dell'utilizzo di _CRTDBG_MAP_ALLOC.Funzioni per la creazione di report sullo stato dello heap
Viene descritta la struttura _CrtMemState, che è possibile utilizzare per acquisire uno snapshot di riepilogo dello stato dell'heap. In questo argomento vengono elencate anche le funzioni CRT che indicano lo stato e il contenuto dell'heap e utilizzano tali informazioni per il rilevamento di perdite di memoria e altri problemi.Registrazione delle richieste di allocazione heap
Vengono indicate le istruzioni per identificare la chiamata specifica di allocazione heap non riuscita.
Sezioni correlate
- Tecniche di debug CRT
È possibile collegarsi alle tecniche di debug per la libreria di runtime del linguaggio C, tra cui: utilizzo della libreria di debug CRT, macro per la segnalazione, differenze tra malloc e _malloc_dbg, scrittura di funzioni hook di debug e heap di debug CRT.