5.10.2 -XX:+HitachiLocalsInStackTraceオプションが指定されている場合
スレッドダンプ内のスタックトレース情報の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オプションを指定している