Une question que je me suis souvent posée sans vraiment trouver de réponse claire : que le moyen le plus propre de fermer une JFrame ? et en particulier au niveau de la libération des ressources ?
Dans plusieurs de mes applications Java, j'ouvre et je ferme des dizaines de JFrame différentes et l'occupation mémoire augmente sensiblement à chaque ouverture sans vraiment descendre lorsque je ferme une fenêtre.
- Faut se contenter d'un setVisible(false) ?
- appel à dispose ?
- setDefaultCloseOperation(EXIT_ON_CLOSE) ?
- passer tous les membres (JComponent) à null pour aider le gc
- vider tous les Container avant de fermer ? (avec la méthode removeAll) ?
Partager