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

Langage Java Discussion :

Problemes de memoires avec les tableaux: outOfMemoryError


Sujet :

Langage Java

  1. #1
    Battosaiii
    Invité(e)
    Par défaut Problemes de memoires avec les tableaux: outOfMemoryError
    Exception in thread "main" java.lang.OutOfMemoryError : Java heap space.
    J'obtiens cette erreur lorsque je remplie mon tableau :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Bufferedimage src= IMAGEPDF;//(l image est correctement initialise avec une //classe
    int [][] srcPixels;
    n=50;
    srcPixels = new int[n][width*height*2]
     
    for(z=0;z<50;z++)
    {
    for(x=0;x<width;x++)
    {
    for(y=0;y<height;y++)
    {
    offset=y*width+x;
    srcPixels[z][offset]=src.getRGB(x,y)
    a z=49 il me met l erreur au dessus. Cela vient a z=49. Cela vne vient pas de offset car mon programme marche avec z=1. De plus l objectif est de faire marcher ce programme pour z=160

    J'ai recopier ce code dun autre pc car je n ai pas internet sur le pc ou je travaille mon code donc il peut y avoir des erreurs de recopiage.


    Lorsque je mets
    width=512
    height=512
    j obtiens des erreurs de memoires,avec width=400 et height=400 je n'ai pas de problemes
    A cause de ca je ne peux construire des bufferedimage de taille width=512 et height=512

    L objectif de mon programme c est de transformer une image puisreconstruire cette image a partir de tous les pixels modifies . Comment dejouer les problemes de memoire avec les images car j ai des problemes avec les tableaux

  2. #2
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Si tu tiens à avoir toute l'image en mémoire, je ne vois d'autre solution à part augmenter la taille de la mémoire allouée à java. Voir la FAQ pour les détails :
    OutOfMemoryError...

  3. #3
    Battosaiii
    Invité(e)
    Par défaut
    Comment on fait avec eclipse pour faire l'equivalent ?

  4. #4
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208

  5. #5
    Battosaiii
    Invité(e)
    Par défaut
    bonjour,
    J'ai mis java -Xms50m dans
    program arguments et
    VM arguments
    tour a tour. Cela n'a pas d effet lorsque que j essaye de sauver 50 images differentes en sauvant chaque pixels dans un tableaux mais ca marche pour 5 images.
    J arrive a sauver une image 400 *400 mais pas une 512* 512. Pourquoi ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 548
    Points : 635
    Points
    635
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    srcPixels = new int[n][width*height*2]
    Un tableau comme ça pèse n x width x height x 2 x 4 octets. Dans ton cas (n=50, w=512, h=512) ça fait 100Mo.

  7. #7
    Battosaiii
    Invité(e)
    Par défaut
    j qrrive pas a stocker 1 image de 512*512 mais je peux stocker une 5 images de 400*400. Ca me semble superieur pourtant je comprend pas ?

    2eme question : faut il mettre
    java -Xms50m dans
    program arguments ou
    VM arguments
    sous eclipse ?

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 548
    Points : 635
    Points
    635
    Par défaut
    Citation Envoyé par Battosaiii
    j qrrive pas a stocker 1 image de 512*512 mais je peux stocker une 5 images de 400*400. Ca me semble superieur pourtant je comprend pas ?
    Pas d'idée non plus ...

    2eme question : faut il mettre
    java -Xms50m dans
    program arguments ou
    VM arguments
    sous eclipse ?
    VM arguments

Discussions similaires

  1. problemes avec les tableaux et macros
    Par Aniss00 dans le forum C
    Réponses: 4
    Dernier message: 15/10/2014, 19h53
  2. probleme avec les tableaux
    Par Ahmad1994 dans le forum C
    Réponses: 6
    Dernier message: 26/05/2014, 14h06
  3. probleme avec les tableaux
    Par heeedi dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 22/05/2009, 10h17
  4. [Langage] Probleme avec les tableaux dynamiques
    Par wawa84 dans le forum Langage
    Réponses: 7
    Dernier message: 19/11/2008, 17h18
  5. probleme mysql avec les tableaux
    Par bilane dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 30/09/2006, 11h57

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