Les Allergies
Alimentaires
Posez votre question Signaler

Problem de Java heap space

kamilia_85 20Messages postés 19 juin 2008Date d'inscription 8 mars 2011Dernière intervention - Dernière réponse le 5 juin 2009 à 13:29
Bonjour,
je vien de terminé mon projet qui traite les textes( 600 texts ) [classification de texts]mais j'ai rencontré ce message quand j'ai traité simplement 100 text !! :
Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space
sachant que j' utilise le jbuilder 2005
es que ce problem a un rapport avec la RAM ??
svp aidez moi .
Lire la suite 

Problem de Java heap space »

4 réponses
Réponse
+1
moins plus
salut
j'ai détruis mes objets après leur utilisation par l'instuction : System.gc ();
mais il rest le méme problem es que il y a d'autre methode plus puissante que celle ci ?
moi j'utilise des methodes, aprés l'éxecution de ces méthode j'ajoute l'instuction : System.gc ();
es que j'ai bien utilsé cette instruction ou je dois la mettre dans une autre place cad avant executé les methodes qui suit ?
merci
pyschopathe- 5 juin 2009 à 13:02
Ben je ne peux pas savoir, c'est toi qui doit être capable de dire si tu détruits bien tes objets au bon moment. Et plutôt que d'appeler le garbage collector trop souvent, mets peut être tout simplement tes objets à NULL, ça devrait être plus performant. Après je ne fais là que des suppositions, je ne connais pas grand chose à Java.
Ajouter un commentaire
Réponse
+1
moins plus
Par défaut, la mémoire RAM allouée à la machine virtuelle n'est pas très grande.
Ya moyen de gérer ça lors de l'execution de l'appli' (quand tu lances ton jar/executable).

Sinon dans le code, essaie d'utiliser le moins de références possibles, essaie d'appeler le moins de fonctions possible (genre n'utiliser que la valeur de retour affectée par un méthode plutôt que la méthode elle-même), optimiser les itérations:

int length = ..;
for(int i = length; i > 0 ; i--) {

}


plutôt que
int length = ..;
for(int i = 0; i < length ; i++) {

}

où tu feras appel à length plusieurs fois.

Pleins d'autres astuces
Ajouter un commentaire
Réponse
+0
moins plus
Je dirais que tu alloues effectivement trop de mémoire... L'exception indique que tu ne peux plus rien allouer sur le tas. Il faudrait revoir ton application et t'assurer que tu détruis correctement tes objets après leur utilisation.
Ajouter un commentaire
Ce document intitulé « problem de Java heap space » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?