Thread, prob libération mémoire

Thread, prob libération mémoire - Java - Programmation

Marsh Posté le 29-04-2004 à 09:30:03    

Voilà j'utilise une classe qui hérite de la classe Thread et lors des tests en charge, il s'avèrent que la mémoire est pas libérée, elle ne l'est que si la JVM est arrêtée...???
 
J'arrive pas à trouver d'où ça peut venir ? Est-ce qu'il y a moyen de savior ce qui reste en mémoire ? Quelle est la bonne méthode poru arrêter les threads ??

Reply

Marsh Posté le 29-04-2004 à 09:30:03   

Reply

Marsh Posté le 29-04-2004 à 10:03:46    

shinji a écrit :

Quelle est la bonne méthode poru arrêter les threads ??


les laisser se terminer

Reply

Marsh Posté le 29-04-2004 à 10:23:29    

Ben c'est ce qui est fait.... y a pas moyen de savoir ce qui bouffe la mémoire ???

Reply

Marsh Posté le 29-04-2004 à 10:33:59    

de base c'est difficile ... utilise un profiler.
 
Vérifie aussi que ton max heap size est pas trop élevé : la JM a tendance à utiliser toute la mémoire qui lui est disponible, même si elle n'en a pas vraiment besoin : ca lui évite de trop garbager


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 29-04-2004 à 10:37:24    

Ok, je pense que c'est vraiment un prob de libération mémoire parce que le prob se produit vraiment en charge au bout d'au moins 1000 threads..
 
Quels sont les cas où la mémoire est pas libérée ? c'est uniquement si on garde une référence sur un objet non ?

Reply

Marsh Posté le 29-04-2004 à 10:48:38    

shinji a écrit :

c'est uniquement si on garde une référence sur un objet non ?


oui.
 
Mais comme je te dis, la jvm a tendance à ne pas faire le ménage completement tant qu'elle en a pas vraiment besoin ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 29-04-2004 à 11:01:25    

Ok, je vais regarder ça ! Merci !

Reply

Marsh Posté le 14-06-2004 à 06:31:34    

utilise un logiciel comme OptimizeIt, met la memoire a fond, lance tes tests de charges et au bout d un moment tu verras la ou tes objets s accumulent (ca s appelle un memory leak). Optimize it te permet de lister les objets par nombre d instances, qd ton nombre d instance va augmenter, tu vas voir la classe de l objet "remonter".

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed