Eviter les fuites mémoires liées aux ressources (Avoiding leak resources)

eclipse_luna

 

Cet article indique comment activer, sous Eclipse, une option permettant d'éviter les fuites mémoires liées aux ressources non fermées.

Sous Eclipse, accéder à la page préférences de l'IDE puis modifier la ligne "Resource leak" en la faisant pointer sur "Error"  afin de forcer l'affichage, dans le code java, des erreurs dues aux ressources non fermées.

La ligne 3, du morceau de code java ci-dessous remonte une erreur Resource leak: 'contenu' is never closed:

static int  lire(File f) throws IOException {
        InputStream contenu = new FileInputStream(f);
        return contenu.read();
    }
Leak resources?

Enfin, avec java 7, on n'a aucune excuse de ne pas positionner cette option sur "Error".

En effet, java 7 nous fournit une ARM (Automatic resources Management) pour améliorer rapidement notre code :

static int  lire(File f) throws IOException {
        try(InputStream contenu = new FileInputStream(f);){
        return contenu.read();
        }
    }
ARM Java7

Enjoy,

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.