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

AWT/Swing Java Discussion :

Fuite mémoire probable - JPanel


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Septembre 2006
    Messages : 81
    Points : 51
    Points
    51
    Par défaut Fuite mémoire probable - JPanel
    Bonjour à tous!

    Voilà un problème qui me fait m'arracher les cheveux depuis quelques temps...

    J'explique :
    Pour une application portable (système de caisse), j'ai du créer une de barre des taches qui contient, entre autre, une horloge.

    Cette horloge extends JPanel et contient quelques JLabels et un timer implémenté de la manière suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    public class Horloge extends JPanel {
    	...
    	private Timer timer;
     
    	public Horloge(int lang){
    		super();
    		...
    		timer = new Timer(1000, new ClockListener());
    		timer.start();
    		...
    	}
    	/**
         * Evenement Timer, change l'heure chaque seconde
         */
        class ClockListener implements ActionListener {
            public void actionPerformed(ActionEvent e) {
            	...
            }
        }
    	public Timer getTimer() {
    		return timer;
    	}
    	public void setTimer(Timer timer) {
    		this.timer = timer;
    	}
    }
    Cette horloge est donc ajoutée dans ma taskbar (un autre objet maison) qui lui meme est ajouté à un écran.

    Or, je viens de faire tourner MemoryAnalyzerTool sur mon projet pour voir ou j'en suis car j'ai l'impression d'avoir une fuite de mémoire à quelque part. Là mat me dit que j'ai plusieurs instances de mon objet horloge.

    Comment faire pour etre sûr que mon horloge soit arretée correctement au changement d'écran? Nouvel écran = nouvelle taskbar => nouvelle horloge

    Merci d'avance pour votre aide!

    Seb

    **edit : résolu car j'appelais simplement mal mon timer.stop.... erreur de débutant mais il faut quand meme ne pas l'oublier!

  2. #2
    Membre averti
    Avatar de Chatanga
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 211
    Points : 346
    Points
    346
    Par défaut
    Une petite remarque au passage : l’appel a super() dans le constructeur ne sert à rien. Certains font néanmoins cet appel pour des rendre les choses « plus claires », mais avec l’effet pervers de faire croire aux débutants qu’il est nécessaire. J’enfonce donc peut-être une porte ouverte avec ma précision, mais ça ne coûte rien de le rappeler

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

Discussions similaires

  1. [TomEE1.7 WebProfil + JAX-RS2.0] Probable fuite mémoire
    Par geforce dans le forum Tomcat et TomEE
    Réponses: 8
    Dernier message: 05/03/2015, 20h21
  2. [tomcat][memoire] java.net.URL et fuite mémoire
    Par Seiya dans le forum Tomcat et TomEE
    Réponses: 6
    Dernier message: 09/03/2009, 10h41
  3. Outil de recherche de fuite mémoire
    Par eag35 dans le forum MFC
    Réponses: 4
    Dernier message: 02/02/2005, 12h46
  4. [SWT]SWT et fuite mémoire(ou pas)
    Par menuge dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 22/06/2004, 21h40
  5. [debug] fuites mémoires
    Par tmonjalo dans le forum C
    Réponses: 3
    Dernier message: 28/07/2003, 17h20

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