< prev index next >
src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/HeapHprofBinWriter.java
Print this page
@@ -584,27 +584,13 @@
}
return (int) length;
}
private void writeClassDumpRecords() throws IOException {
- SystemDictionary sysDict = VM.getVM().getSystemDictionary();
ClassLoaderDataGraph cldGraph = VM.getVM().getClassLoaderDataGraph();
try {
- sysDict.allClassesDo(new SystemDictionary.ClassVisitor() {
- public void visit(Klass k) {
- try {
- writeHeapRecordPrologue();
- writeClassDumpRecord(k);
- writeHeapRecordEpilogue();
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
- });
- // Add the anonymous classes also which are not present in the
- // System Dictionary
- cldGraph.allAnonymousKlassesDo(new ClassLoaderDataGraph.KlassVisitor() {
+ cldGraph.classesDo(new ClassLoaderDataGraph.ClassVisitor() {
public void visit(Klass k) {
try {
writeHeapRecordPrologue();
writeClassDumpRecord(k);
writeHeapRecordEpilogue();
@@ -1086,30 +1072,13 @@
out.write(buf);
}
private void writeClasses() throws IOException {
// write class list (id, name) association
- SystemDictionary sysDict = VM.getVM().getSystemDictionary();
ClassLoaderDataGraph cldGraph = VM.getVM().getClassLoaderDataGraph();
try {
- sysDict.allClassesDo(new SystemDictionary.ClassVisitor() {
- public void visit(Klass k) {
- try {
- Instance clazz = k.getJavaMirror();
- writeHeader(HPROF_LOAD_CLASS, 2 * (OBJ_ID_SIZE + 4));
- out.writeInt(serialNum);
- writeObjectID(clazz);
- KlassMap.add(serialNum - 1, k);
- out.writeInt(DUMMY_STACK_TRACE_ID);
- writeSymbolID(k.getName());
- serialNum++;
- } catch (IOException exp) {
- throw new RuntimeException(exp);
- }
- }
- });
- cldGraph.allAnonymousKlassesDo(new ClassLoaderDataGraph.KlassVisitor() {
+ cldGraph.classesDo(new ClassLoaderDataGraph.ClassVisitor() {
public void visit(Klass k) {
try {
Instance clazz = k.getJavaMirror();
writeHeader(HPROF_LOAD_CLASS, 2 * (OBJ_ID_SIZE + 4));
out.writeInt(serialNum);
< prev index next >