Bonjour,
Je suis en train de programmer une application Java permettant de minimiser toute expression booléenne en utilisant la méthodologie QuineMcCluskey. Lorsque je compile mon code, j'ai une erreur OutOfMemory avec le message "Java heap space"!
Si je comprends bien, l'exception peut avoir plusieurs origines:
- L'espace mémoire alloué au segment de mémoire de la machine virtuelle Java est insuffisant pour créer les objets requis par l'application.
- Une fuite de mémoire empêche le ramasse-miettes de libérer des objets non encore utilisés mais ayant toujours des références. Ainsi, ces objets ne sont jamais libérés et occupent de plus en plus d’espace dans la pile jusqu’à occuper tout l’espace disponible.
- ...
Le problème est-il dû à Eclipse ou du programme programme que je lance depuis Eclipse ?
Je sais qu’il peut être nécessaire d’utiliser un outil de profilage pour analyser le contenu de la mémoire de la machine virtuelle Java et déterminer l’origine de la consommation de mémoire. Mais comment utiliser ces outils?
Dois-je modifier les données xmx et xms? Quelles pourraient être les conséquences si je les change? (Je sais aussi qu'il faut optimiser mon code).Sachant que cette application doit être utilisée par beaucoup d'utilisateurs (donc par différents ordinateurs ...), les modifications de xmx et xms seront-elles pris en compte sur un autre poste ?
Quelles sont les différentes étapes de débogage?
Comme vous pouvez le voir, j'ai beaucoup de questions ... C'est pourquoi j'ai créé ce post, j'aimerais résoudre ce problème de la meilleure manière tout en apprenant les bon réflexes.
Je vous remercie!
Partager