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 :

provoquer une fuite de memoire ?


Sujet :

Java

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 22
    Points : 19
    Points
    19
    Par défaut provoquer une fuite de memoire ?
    Salut a tous ,
    en relisant le code d'un pote j'ai trouvé ce bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Personne p=new Personne();
    // des instructions
    p=new Personne();
    ce code se trouve dans une boucle qui sera exécuté une 50aine de fois .
    Est ce que ça peut provoquer une fuite de mémoire ou le garbage collector peut faire s'en débarrasser ?
    Merci .

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Les fuites mémoires sont impossibles en Java pure : les objets non-référencés seront supprimé par le GC. Tu ne peux avoir ce genres de problèmes que sur les ressources externes (fichiers, sockets, mémoire alloué en natif, etc.).


    Ici tu as des allocations d'objets inutiles (et donc autant de désallocation qui aurait pu être éviter). Sur une boucle de 50 itérations ce n'est pas grand chose, mais c'est pas top

    a++

  3. #3
    Membre habitué
    Profil pro
    Dev NodeJS
    Inscrit en
    Août 2006
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev NodeJS

    Informations forums :
    Inscription : Août 2006
    Messages : 177
    Points : 181
    Points
    181
    Par défaut
    Le garbage collector supprimera le premier objet personne si il n'y a pas d'autres références vers lui ailleurs.

  4. #4
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Ok merci , je pose cette question , car en je codais souvent en c++ et ce genre de code , c'est une cata .

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

Discussions similaires

  1. Select Case provoque une erreur
    Par defluc dans le forum SQL
    Réponses: 6
    Dernier message: 14/08/2005, 23h59
  2. Outils pour rechercher des fuites de memoires dans un prog
    Par elekis dans le forum Applications et environnements graphiques
    Réponses: 5
    Dernier message: 29/04/2005, 21h06
  3. fuite de memoire dans une liste de pointeur sur composant
    Par Nicolos_A dans le forum Composants VCL
    Réponses: 2
    Dernier message: 16/12/2004, 08h46
  4. Libérer une form, pb memoire pas totalement rendu.
    Par flash dans le forum Composants VCL
    Réponses: 4
    Dernier message: 07/10/2004, 14h43
  5. correction de fuite de memoire
    Par vince3320 dans le forum C
    Réponses: 38
    Dernier message: 28/06/2004, 11h27

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