Partager via


_CrtMemDumpAllObjectsSince

Elimine des informations sur les objets du tas depuis le début de l'exécution du programme ou d'un état du tas spécifié (version Debug uniquement).

void _CrtMemDumpAllObjectsSince(  
   const _CrtMemState *state  
);

Paramètres

  • state
    Pointeur vers l'état du tas à partir duquel démarrer l'élimination ou NULL.

Notes

La fonction _CrtMemDumpAllObjectsSince fait un dump des informations d'en-tête du débogage d'objets alloués dans le tas dans un formulaire par lisible. Les informations de dump peuvent être utilisées par l'application pour effectuer un suivi des allocations et détecter les problèmes de mémoire. Lorsque _DEBUG n'est pas défini, Les appels de _CrtMemDumpAllObjectsSince sont supprimés pendant le prétraitement.

_CrtMemDumpAllObjectsSince utilise la valeur du paramètre state pour déterminer où démarrer l'opération de dump. Pour démarrer l'élimination à partir d'un état du tas spécifié, le paramètre state doit être un pointeur vers une structure _CrtMemState qui a été effectuée par _CrtMemCheckpoint avant l'appel de _CrtMemDumpAllObjectsSince. Lorsque state est NULL, la fonction commence le dump dès le début de l'exécution du programme.

Si l'application a installé une fonction de raccordement de dump en appelant _CrtSetDumpClient, chaque fois que _CrtMemDumpAllObjectsSince fait un dump des informations sur un type de bloc _CLIENT_BLOCK elle appelle la fonction fournie par l'application de dump également. Par défaut, les blocs internes du runtime C (_CRT_BLOCK) ne sont pas inclus dans les opérations d'image mémoire. La fonction _CrtSetDbgFlag peut être utilisée pour mettre à 1 le bit de _CRTDBG_CHECK_CRT_DF _crtDbgFlag pour inclure ces blocs. En outre, les blocs marqués comme libérés ou ignorés (_FREE_BLOCK, _IGNORE_BLOCK) ne sont pas inclus dans l'image mémoire.

Pour plus d'informations sur les fonctions d'état du tas et la structure de _CrtMemState, consultez Fonctions de création de rapports d'état du tas. Pour plus d'informations sur la façon dont les blocs de mémoire sont alloués, initialisés, et gérés dans la version Debug du tas de base, consultez Détails du tas de débogage CRT.

Configuration requise

Routine

En-tête requis

_CrtMemDumpAll-ObjectsSince

<crtdbg.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.

Bibliothèques

Seulement les versions debug des bibliothèques Runtime C.

Exemple

Pour un exemple d'utilisation de _CrtMemDumpAllObjectsSince, consultez crt_dbg2.

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Voir aussi

Référence

Routines de débogage

_crtDbgFlag