2010-11-10 7 views
16

je lis à beaucoup d'endroits, mais n'a pas trouvé un endroit où je peux en apprendre davantage sur:théorie et de l'algorithme derrière collecte des ordures Java

Quelle est la collecte des ordures java all about?

Comment est-il mis en œuvre?

Quand et comment l'appelle-t-on?

Quels algorithmes suivent pour récupérer la mémoire?

En bref, tout à son sujet :)

!!! FIXES

Un très bon article: http://www.artima.com/insidejvm/ed2/gcP.html

+0

Je vais devoir préparer une réponse longue, mais il y a des tas (sans jeu de mots) de différents types d'algorithmes de GC et de la sémantique. – Xailor

+0

+1 pour le lien merveilleux :-) –

+0

utile - https://www.cubrid.org/blog/understanding-java-garbage-collection – roottraveller

Répondre

9

La version très court laps de réponses sont:

Quelle est la collecte des ordures java à propos? Le GC est un mécanisme de gestion de la mémoire où le système (la JVM dans ce cas) est responsable de la récupération automatique de la mémoire qui n'est plus utilisée.

Comment est-il mis en œuvre?

Il existe plusieurs façons de l'implémenter. Une description simple est que chaque morceau de mémoire qui est alloué est suivi. périodiquement, le système vérifie les pièces allouées pour voir si une partie du programme (les variables) peut toujours atteindre la mémoire. Toute mémoire qui ne peut être atteinte est récupérée.

Quand et comment est-il appelé?

Ceci est également laissé à la mise en œuvre. La seule garantie que vous avez en Java est qu'avant de lancer un OutOfMemoryError, le système tentera de récupérer de la mémoire. Je m'attendrais à ce que la plupart des implémentations de GC essayent aussi de faire une collection avant qu'elles demandent au système d'exploitation sous-jacent plus de mémoire. En général, il y aura un fil de fond qui traite de l'exécution du collecteur. Quels sont les algorithmes suivants pour ?

Il y a plusieurs possibles. Regardez les articles que d'autres ont publiés comme point de départ pour cela.

+0

Merci pour les commentaires, je verrais si je reçois de bons articles, et mettrait à jour le poste avec des liens – daydreamer

2

...Bref tout à son sujet :)

Si vous avez accès à une bonne bibliothèque, la caisse ce livre excellent et très complet sur la collecte des ordures:

Jones Richard et Rafael Lins, Collecte des déchets: Algorithmes pour mémoire automatique dynamique Management, Wiley and Sons (1996), ISBN 0-471-94148-4

En outre, ce livre est encore en cours d'impression, et répertorié sur au moins une librairie en ligne bien connue. Comparer les prix. Il est disponible neuf pour un large éventail de prix, et pour aussi peu que 25 $ US d'occasion.

+0

Merci pour la référence du livre! – daydreamer

0

meilleur article pour savoir comment fonctionne GC en Java à JavaRevisted Et Algorithem vous pouvez obtenir à wiki comme mentionné par Dan

Questions connexes