Envoyé par
romain1337
Bonjour,
Il me semble tout à fait logic que le GC ne doit pas être appelé dans une boucle, par exemple dans un endroit ou la performance est critique. On peux essayer de gérer la création de ses instances, les réutiliser si possible, faire des pools. Mais rien n'empêche l'utilisation de cette méthode bien que cela doit-être utilisé dans des cas très spécifique, les jeux vidéo après certaines opérations coûteuse en mémoire éventuellement, ou après un traitement important ayant généré beaucoup d'objets devenu obsolètes depuis.
Première mauvaise nouvelle, System.gc() ne réalise pas forcément un GC (il peut ne rien faire) et surtout on ne sait pas quand.
Comme décrit dans la doc java, cela n'est en aucun cas une méthode utilisé pour lancer une passe du GC. C'est juste un "hint" pour le système, afin de lui indiquer qu'on aimerais bien qu'il passe le GC, et c'est pour cela qu'il ce peux que cette appelle n'appelle pas le GC, justement. Vous auriez pu le préciser dans votre article.
Partager