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 :

GarbageCollector et objet à null


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut GarbageCollector et objet à null
    Bonjour,

    Au cours d'une discution, un collègue m'a précisé qu'un bon moyen d'optimiser la gestion de la mémoire par le Garbage Collector de Java était de mettre mes objets à null à la fin de mes méthodes.

    Après avoir fait quelques recherches sur internet, je n'ai pas réussi à trouver de la documentation vraiment signigificative sur le sujet et je me demande donc si c'est vraiment une bonne pratique de codage en java ou si c'est une pis-aller.

    Pouvez-vous m'aider à clarifier la question?

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur Java / JEE
    Inscrit en
    Février 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java / JEE

    Informations forums :
    Inscription : Février 2008
    Messages : 185
    Par défaut
    Bonjour,

    C'est beaucoup moins vrai maintenant. Le GC de la JVM a été fortement optimisé depuis la version 1.4 Mais en effet avant la version 1.4 ou 1.5 je ne me souviens plus bien, le GC ne pouvait pas supprimer des objets liés. Par exemple, A qui référence B et B qui référence A ne pouvait pas être supprimé... Maintenant ce n'est plus le cas.
    Je pense que ce n'est plus utile. Maintenant tu peux toujours le faire pour accélérer le nettoyage des objets ?

    Mathieu

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut
    Merci pour ta réponse.

    Il n'est pas nécessaire que je me préocupe de mettre les objet à null, le Garbage Collector des dernières versions est suffisament intelligent pour se débrouiller tout seul.
    Si je ne dis pas de bètise, ceci est valable pour les machine virtuelle Oracle uniquement. Si j'utilise une JVM tierce, cela dépend de l'implémentation du Garbage Collector qu'elles ont mis en place.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur Java / JEE
    Inscrit en
    Février 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java / JEE

    Informations forums :
    Inscription : Février 2008
    Messages : 185
    Par défaut
    Effectivement je parle pour Java Hot Spot d'Oracle. Je connais mal les GC des autres. A mon avis depuis le temps, ça ne doit plus être un problème même sur d'autres JVMs.

Discussions similaires

  1. objet null en ncomparaison
    Par root76 dans le forum Langage
    Réponses: 5
    Dernier message: 19/04/2007, 15h03
  2. [jsp] usebean d'un objet null
    Par GLDavid dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 05/07/2006, 18h12
  3. Réponses: 4
    Dernier message: 18/02/2006, 16h48
  4. [Language]Type d'un objet null
    Par Calambo dans le forum Langage
    Réponses: 8
    Dernier message: 26/04/2005, 10h06
  5. Formulaire - lien JS - objet Null ou pas objet...
    Par Romalafrite dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 17/10/2004, 14h08

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