0

連続するjavacoreダンプで、クラスローダーのアドレスがWebsphere 6.1(IBM JVM 1.5.0)で変更されていることを確認しました。クラスローダーの下のクラスのアドレスは変更されていません。それで、それは新しいアドレスの同じクラスローダーではありませんか?

たとえば、最初のjavacore

2CLTEXTCLLOADローダーcom/ibm / ws / classloader / CompoundClassLoader(0x00002AAABF5BB7F0)
3CLTEXTCLASS org / eclipse / emf / ecore / EObject(0x00002AAB24684B30)

そして後のjavacoreで

2CLTEXTCLLOADローダーcom/ibm / ws / classloader / CompoundClassLoader(0x00002AAABF5AB6E0)
3CLTEXTCLASS org / eclipse / emf / ecore / EObject(0x00002AAB24684B30)

以前は0x00002AAABF5BB7F0のクラスローダーの下にあった同じクラスでしたが、現在はクラスローダーが0x00002AAABF5AB6E0にあります。

私はクラスのアンロードの問題を理解しようとしていますが、これはヒープダンプを掘り下げるときに生活を楽にするようには見えません。

4

2 に答える 2

1

GC がヒープを圧縮している可能性があります。-Xnocompactgc または -Xnocompactexplicitgc を汎用 JVM 引数として検討してください。IBM JDK 診断ドキュメントを参照してください: http://www.ibm.com/developerworks/java/jdk/diagnosis/

于 2009-07-28T05:25:05.267 に答える
0

アプリケーションのクラスローダがあるため、アプリケーションを停止して再起動した場合、クラス用に新しいクラスローダが作成されませんか?

ネイティブ ヒープの消費などの理由で、これについて心配していますか?

于 2009-07-24T09:21:58.230 に答える