IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Problème de mémoire: Java heap space


Sujet :

Java

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 273
    Points : 73
    Points
    73
    Par défaut Problème de mémoire: Java heap space
    Bonjour à tous,

    Je fais une application en Java dans le cadre de mon stage et tout se passait pas trop mal jusqu'à ce que je tombe sur cette erreur: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space

    Ca ne me le faisait pas avant et ce n'est qu'en ajoutant des appels à des méthodes que ça a fini par apparaître.
    Je me suis renseigné et d'après plusieurs forums il sagirait d'un espace mémoire. Alors j'ai fais comme recommandé, Run as, Run configuration, Arguments, et dans VM Arguments j'ai essayé des trucs du genre Xmx 256m ou -Xmx 256m etc. J'au fais apply mais rien n'a changé.
    Ensuite j'ai vu qu'on pouvait se rendre compte de la place mémoire utilisé grâce à la classe Runtime. j'ai donc fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     System.out.println("Mémoire totale: "+run.totalMemory());
    avant l'appel à toutes mes méthodes.
    Puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("Mémoire utilisée: "+run.freeMemory());
    après chaque appel à une méthode.

    Et en console j'obtiens:

    Mémoire totale: 21561344
    Mémoire utilisée: 15536064
    Mémoire utilisée: 15536064
    Mémoire utilisée: 15536064
    Mémoire utilisée: 15536064
    Mémoire utilisée: 15476080
    Mémoire utilisée: 15446088

    Ah oui et dernière chose, mes méthodes en questions sont soit chargées de chercher des infos dans une base Access, soit dans des fichiers Excel. Et donc ça fait plusieurs dizaines de milliers de lignes à balayer.

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Il n'y a pas d'espace pour le paramètre de la JVM: -Xmx256m par exemple.

    Est-ce que ton application a besoin de charger autant d'objets, ou est-ce simplement la recherche qui se fait sur beaucoup de données ?

  3. #3
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    De toute facon, tu n'as pas 50 choix. Soit il faut optimiser ton code pour utiliser moins de place (par exemple, essayer de faire le maximum de traitement par requete dans la base access), soit augmenter la memoire disponible pour la machine virtuelle. Et si l'augmentation ne change rien (une fois que tu utiliseras la bonne syntaxe), il faut verifier s'il n'y a pas un soucis dans ton programme (par exemple une boucle infinie qui instancie des objets)...

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 273
    Points : 73
    Points
    73
    Par défaut
    @fr1man: c'est que j'ai pas mal de recherches sur beaucoup de lignes plutôt que je charge beaucoup d'objets.

    Par contre ta commande à l'aire de fonctionner puisque je n'ai plus l'erreur. Il ne fallait pas mettre d'espace en fait. Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Java heap space Exception, problème de mémoire
    Par Bobble dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 08/11/2010, 18h04
  2. Réponses: 10
    Dernier message: 25/08/2010, 21h07
  3. Problème mémoire Java heap space avec tableau et ArrayList
    Par phoenix420 dans le forum Collection et Stream
    Réponses: 45
    Dernier message: 22/06/2010, 10h01
  4. Problème avec le Java heap space
    Par Viscapon dans le forum JSF
    Réponses: 5
    Dernier message: 18/05/2009, 17h42
  5. probleme de mémoire : Java heap space
    Par Seb33300 dans le forum Interfaces Graphiques en Java
    Réponses: 10
    Dernier message: 21/02/2007, 13h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo