Les programmeurs qui travaillent dans le langage de programmation C sont en mesure d'allouer dynamiquement de la mémoire . Lorsque la mémoire est allouée , il doit être libérée plus tard afin que l'ordinateur sait qu'il peut utiliser cette mémoire pour d'autres fins. Un programme qui ne désaffecter toute sa mémoire a une fuite de mémoire. Des fuites de mémoire peuvent être le résultat de la programmation bâclée ou un hard- to-find bug , mais de toute façon outils existent pour aider à éliminer les fuites de mémoire à partir de votre code. ccmalloc
L'outil de ccmalloc peut être lié à un programme visant à surveiller la façon dont il utilise la mémoire . Il vous dira combien de mémoire a été alloué et ensuite désaffectées , pour vous aider à trouver les fuites , et il sera également rapport sur les emplacements de mémoire écrasées , mémoire non initialisée , tente d'écrire des données dans la mémoire ou de la mémoire désalloués qui a été libérée à plusieurs reprises. Utiliser ccmalloc en conjonction avec un bon débogueur fera Code vos ressources mémoire d'utilisation beaucoup plus efficace. Le nom est une référence à malloc , la fonction C utilisé pour l'allocation de la mémoire.
NJAMD
NJAMD , qui signifie « pas seulement un débogueur malloc ", alloue une grand bloc de données, puis inflige it out que le programme en cours d'analyse a besoin. Cela permet NJAMD d'analyser exactement ce qui s'est passé à la mémoire allouée après la fin du programme en cours d'exécution . Cet outil a un certain nombre d'options qui permettent au codeur de choisir comment étroitement NJAMD va chercher des fuites de mémoire. Des recherches plus approfondies prendront beaucoup plus longtemps.
Mpatrol
L'outil de débogage mpatrol crée un tableau de taille fixe , puis alloue de la mémoire pour le programme de ce tableau . Actions L'outil mpatrol de nombreuses caractéristiques avec d'autres outils de détection des fuites de mémoire, mais il peut également être utilisé pour voir comment un programme fonctionne avec des ressources limitées en spécifiant un nombre relativement petit tableau pour le programme à utiliser . Même pour un programme sans fuites de mémoire, cet outil permet de tester l'efficacité avec laquelle elle opère.
CMemLeak
Pas tous les outils de fuite de mémoire sont compliquées . CMemLeak , par exemple, que des traces de quelques appels de fonctions , mais évite certaines surcharges mentale à apprendre à utiliser les outils de détection des fuites mémoire à part entière. Pour les personnes qui écrivent des programmes plus courts , ou qui code moins souvent , un outil simple qui fait le travail peut être un meilleur choix .