J'ai un vidage de tas au format PHD à partir d'IBM jvm et je souhaite examiner les valeurs de certaines chaînes. Avec les dumps binaires hprof de la JVM Sun, cela est possible, mais je n'ai pas été capable de récupérer ces informations à partir d'un vidage IBM.Pouvez-vous extraire la valeur des chaînes à partir d'un vidage de tas java IBM PHD?
J'ai essayé:
- Eclipse Memory Analyzer (0.8.0.200906170940) avec Portal DTFJ IBM Heap Dump lecteur (1.3.0.200903241644)
- IBM Support Assistant (3.1.0.00) avec mémoire de vidage de diagnostic pour Java (2.0.0.3b)
- Running "chaînes" sur le fichier de vidage
- Conversion en décharge texte avec com.ibm.jvm.ras.findroots.PrintHeapdump de svcdump.jar trouvés dans MDD4J (2.0.0.3b
Dans l'analyseur de mémoire Eclipse, je peux voir le tableau char dans une chaîne, mais toutes les entrées dans le tableau sont nulles. Je ne peux pas non plus voir les attributs primitifs sur les objets.
indice IBM qu'ils ne stockent les valeurs des types primitifs à http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg21190476
Cela a été rendu possible en utilisant une classe Java DataOutputStream qui permet à la sortie de types de données Java primitives dans un format binaire portable.
J'utilise Java 5.0:
2XHOSLEVEL OS Level : AIX 5.3 2XHCPUS Processors - 3XHCPUARCH Architecture : ppc64 3XHNUMCPUS How Many : 8 1CIJAVAVERSION J2RE 5.0 IBM J9 2.3 AIX ppc64-64 build j9vmap6423-20070426 1CIVMVERSION VM build 20070420_12448_BHdSMr