# Fuite mémoire



## g.lebourgeois (7 Mai 2007)

Bonjour,
programmant un bon gros projet en C++, je me retrouve face à petit problème assez ennuyeux : LA FAMEUSE FUITE MEMOIRE !

Alors j'ai essayé de bien vérifier la destruction de tout ce qui traîne d'alloué dynamiquement, ça a l'air ok...
Donc je me demandais s'il existait des outils afin de détecter les fuites, et de déterminer leur provenance, notamment sous xcode...

Merci de votre aide !


----------



## Didier Guillion (7 Mai 2007)

g.lebourgeois a dit:


> Bonjour,
> programmant un bon gros projet en C++, je me retrouve face à petit problème assez ennuyeux : LA FAMEUSE FUITE MEMOIRE !
> 
> Alors j'ai essayé de bien vérifier la destruction de tout ce qui traîne d'alloué dynamiquement, ça a l'air ok...
> ...



Oui, et c'est assez efficace.

Tu lance ton appli via Debug>Launch using performance tool>Malloc debug

Cordialement


----------



## g.lebourgeois (7 Mai 2007)

Je te remercie pour cet outil, qui me d&#233;tecte bien une fuite dans une m&#233;thode. Cependant, il m'indique cette fuite comme ceci :
2060 bytes in 62 nodes: 
0x1
start
_start
main
Crawler::launcher()
Crawler::getUrlAndExplore()
page::explorePage(curlSession*)
operator new[](unsigned long)
operator new(unsigned long)

Or, je n'ai pas de tableaux de long dans cette m&#233;thode... uniquement des tableaux de string. Y-at'il un lien ? Suis-je stupide ? Ou bien le CPP ne me veut pas ?


----------



## ntx (7 Mai 2007)

Si tu as un new[], tu as bien mis un delete[] ?  
Donne nous ton code qu'on puisse voir par nous même.


----------



## g.lebourgeois (7 Mai 2007)

Merci j'ai trouv&#233; !
Y'avait bien un delete en fin de m&#233;thode... sauf que le new &#233;tait au sein d'une violente boucle, &#231;a montait salement en charge !


----------



## claw59 (7 Mai 2007)

si tu lances ton programme, tu peux obtenir des informations intéressantes sur les fuites de mémoire (objet et adresse) en utilisant l'outil de commande en ligne :

leaks <numeroPid>


----------



## tatouille (8 Mai 2007)

g.lebourgeois a dit:


> Bonjour,
> programmant un bon gros projet en C++, je me retrouve face &#224; petit probl&#232;me assez ennuyeux : LA FAMEUSE FUITE MEMOIRE !
> 
> Alors j'ai essay&#233; de bien v&#233;rifier la destruction de tout ce qui tra&#238;ne d'allou&#233; dynamiquement, &#231;a a l'air ok...
> ...



/Developer/Applications/Performance Tools/
 
man gdb

gdb toc

more


----------

