Comment trouver une fuite de mémoire en Java (à l'aide par exemple JHat)? J'ai essayé de charger le tas de vidage dans JHat de prendre un look de base. Cependant, je ne comprends pas comment je suis censé être en mesure de trouver la racine de la référence (ref) ou peu importe son nom. Fondamentalement, je peux dire qu'il y a plusieurs centaines de mo de hash table entries ([java.util.HashMap$l'Entrée ou quelque chose comme ça), mais les cartes sont utilisées partout... Est-il un moyen de recherche pour les grandes cartes, ou peut-être la conclusion générale les racines d'un grand objet des arbres?
[Modifier] Ok, j'ai lu les réponses jusqu'à présent, mais permet simplement de dire que je suis un bon bâtard (ce qui signifie que je suis plus intéressé à apprendre comment utiliser les JHat que de payer pour JProfiler). Aussi JHat est toujours depuis qu'elle est partie du JDK. Sauf si bien sûr il n'y a aucune manière avec JHat mais la force brute, mais je ne peux pas croire que cela peut être le cas.
Aussi, je ne pense pas que je vais être capable de le modifier (ajout de la journalisation de toutes les tailles de carte) et l'exécuter pendant une période suffisamment longue pour moi à l'avis de la fuite.