スレッドダンプ内のスタックトレース情報の1スタックフレーム情報ごとに,そのスタックフレームに対応するメソッド内のローカル変数情報が挿入されて,出力されます。
出力形式および出力内容は,-XX:+HitachiLocalsInThrowableが指定されている場合に標準出力に出力される内容と同じです。
ただし,-XX:+HitachiLocalsInStackTraceオプションでは,次のオプションの指定は無効になります。
- -XX:HitachiCallToStringオプション
Javaプログラムの例と,それに対するスタックトレース内のローカル変数情報の出力例を示します。
Javaプログラムの例3
class Example3 {
public static void main(String[] args) {
Example3 e3 = new Example3();
e3.method();
}
synchronized void method() {
int l1 = 1;
float l2 = 2.0f;
String l3 = "local 3";
Character l4 = new Character('X');
Object l5 = new Thread();
Object[] l6 = new Thread[10];
<ここでスレッドダンプ出力!>
}
} |
出力例を次に示します。この例は,次の場合の例です。
- -gオプションまたは-g:varsオプションを指定して作成されたclassファイルである
- -XX:+HitachiLocalSimpleFormatオプションを指定している
- -XX:+HitachiTrueTypeInLocalsオプションを指定している
図5-8 Javaプログラムの例3に対するローカル変数情報の出力例
![[図データ]](figure/zu051000.gif)