Ces tableaux primitifs sont susceptibles d'être l'état interne des choses comme String
, qui maintient son état dans un char[]
. Un bon profileur le comprendra et aura la notion de «taille retenue», qui décrit la taille des objets, y compris la taille de leurs sous-objets. Cela indiquerait que String
occupait l'espace, et non char[]
.
Cependant, je ne vois pas de "taille retenue" dans VisualVM. Il ne semble pas avoir les capacités de profilage appropriées des alternatives commerciales.
Pour voir de quoi je parle, essayez de télécharger une évaluation de YourKit, et connectez-la à votre application. C'est beaucoup plus complexe que VisualVM, mais il peut vous donner la taille retenue des objets de tas, et c'est assez éclairant. Il vous montrera également ce qui référence chacun des objets sur le tas, de sorte que vous pouvez tracer des fuites.
Merci, cela semble être une meilleure option ... – MalcomTucker