Comment puis-je libérer de la mémoire un peu à la façon des destructeurs en C++ ?
Comment puis-je libérer de la mémoire un peu à la façon des destructeurs en C++ ?
Salut,
En Java tu n'as pas à gérer les allocations/libérations de mémoire...
Le garbace collector (GC) s'en occupe automatiquement à partir du moment où l'objet n'est plus référencé nulle part...
Tu peux eventuellement appeller explicitement le GC avec System.gc() mais ce n'est pas garantit qu'il libère la mémoire de suite. Toutefois c'est en général inutile car le GC est assez bien optimizé...
Enfin si tu peux redéfinir la méthode finalize() si tu as besoin d'effectuer un traitement particulier à la 'destruction' de ton objet (mais il ne faut pas appeller explicitement finalize(), le GC s'en occupe).
a++
Mais ce que je ne comprends pas, c que j'ai une application qui stocke 20 fois une chaîne de caractère (final) dans un fichier temporaire et que celà ajoute 10Mo d'utilisation mémoire en plus à chaque fois que je lance la fonction <<ajouter dans fichier>> depuis l'application. Même chose pour l'envoi de requête... à la fin mon appli qui utilisait au départ 20Mo, se retrouve avec 80Mo !!! Je ne sais vraiment pas où chercher...
Tu fermes bien tes flux d'écriture dans le fichier ?
Sinon on pourrait voir la méthode ?
a++
Disons ke ce que j'observe, c que lorsque je minimise la fenêtre de mon application java, beaucoup de mémoire se libère... Par contre similairement à Eclipse (par Exemple), plus je laisse l'appli ouverte longtemps en faisant n-fois certaines manipulation (écrire du texte, ouvrir/fermer des onglets), l'appli consomme de plus en plus de mémoire sans jamais en rendre...
Tu parles de la mémoire dans le gestionnaire des taches windows ?Envoyé par Vrylx
Si c'est le cas, ce n'est pas représentatif de la consommation de ton appli.
C'est la JVM qui utilise la mémoire, et la quantité utilisée est très peu (voir pas du tout) variable.
Si c'est la mémoire utilisée par tes objets, etc...par des methodes java te permettant d'avoir la conso réelle, alors ok, il y a peut-être un problème à ton appli.
réponse : ouiTu parles de la mémoire dans le gestionnaire des taches windows ?
où puis-je voir la conso de mon appli ?
En faisant une recherche sur developez.com...Envoyé par Vrylx
Un des sujets trouvé par la recherche:
http://www.developpez.net/forums/vie...ight=m%E9moire
Partager