_CrtCheckMemory
Confirme l'intégrité des blocs de mémoire alloués dans le tas de débogage (version debug uniquement).
int _CrtCheckMemory( void );
Valeur de retour
En cas de réussite, retourne TRUE d' _CrtCheckMemory ; sinon, la fonction retourne FALSE.
Notes
La fonction d' _CrtCheckMemory valide la mémoire allouée par le gestionnaire du tas de débogage en vérifiant le tas de base sous-jacent et en examinant chaque bloc de mémoire.Si une incohérence d'erreur ou de mémoire est produite dans le tas de base sous-jacent, les informations d'en-tête de débogage, ou les mémoires tampons de remplacer, _CrtCheckMemory génère un rapport de débogage avec les informations décrivant la condition d'erreur.Lorsque _DEBUG n'est pas défini, les appels à _CrtCheckMemory sont supprimés pendant le prétraitement.
Le comportement d' _CrtCheckMemory peut être contrôlé en définissant les champs de bits de la balise de _crtDbgFlag à l'aide de la fonction de _CrtSetDbgFlag .Rotation du champ de bits de _CRTDBG_CHECK_ALWAYS_DF DANS les résultats dans _CrtCheckMemory appelé chaque fois qu'une opération d'allocation de mémoire est demandée.Bien que cette méthode ralentisse l'exécution, il est utile pour intercepter les erreurs rapidement.Rotation du champ de bits de _CRTDBG_ALLOC_MEM_DF OUTRE des causes _CrtCheckMemory pour ne pas vérifier le tas et ne pas retourner immédiatement TRUE.
Étant donné que cette fonction retourne TRUE ou FALSE, elle peut être passée à l'une des macros de _ASSERT créer un mécanisme simple de gestion des erreurs d'erreur de débogage.L'exemple suivant crée un échec d'assertion si l'altération est détectée dans le tas :
_ASSERTE( _CrtCheckMemory( ) );
Pour plus d'informations sur la façon dont _CrtCheckMemory peut être utilisé avec d'autres fonctions de débogage, consultez fonctions de création de rapports d'état du tas.Pour une présentation de gestion de la mémoire et du tas de débogage, consultez gestion de la mémoire et le tas de débogage.
Configuration requise
routine |
en-tête requis |
---|---|
_CrtCheckMemory |
<crtdbg.h> |
Pour plus d'informations de compatibilité, consultez compatibilité dans l'introduction.
bibliothèques
Versions debug de Bibliothèques runtime C uniquement.
Exemple
Pour un exemple d'utilisation _CrtCheckMemory, consultez crt_dbg1.
Équivalent .NET Framework
System : : diagnostic : : PerformanceCounter