9.7.1 統計前のGC選択機能の概要

クラス別統計機能を実行すると,拡張スレッドダンプへクラス別統計情報が出力できます。統計前のGC選択機能では,クラス別統計情報を出力する前に実施する処理を選択できます。調査目的に合わせて,実施する処理を選択することで,Javaオブジェクトのさまざまな変化の様子をクラス別統計情報に取得できます。

統計前のGC選択機能を使用する場合,jheapprofコマンドの引数で実行する処理を指定します。クラス別統計機能実行前に実施できる処理とjheapprofコマンドの引数を次の表に示します。

表9-13 クラス別統計機能実行前に実施できる処理とjheapprofコマンドの引数

処理の種類処理内容jheapprofコマンドの引数
FullGCの実行Tenured領域も含む,JavaVM固有領域全体を対象に,使用済みのオブジェクトを回収します。-fullgc
CopyGCの実行Eden領域およびSurvivor領域だけを対象に,使用済みのオブジェクトを回収します。-copygc
GCを実行しない使用済みのオブジェクトがあっても回収しません。-nogc

なお,JavaVM起動オプションで-XX:+HitachiVerboseGCおよび-XX:+HitachiVerboseGCPrintCauseを指定している場合にクラス別統計機能を実行すると,拡張verbosegc情報に次の情報が出力されます。

これらの情報は,jheapprofコマンドに指定する引数によって,出力される情報が異なります。jheapprofコマンドの引数と出力情報の関係を次の表に示します。

表9-14 jheapprofコマンドの引数と出力情報の関係

jheapprofコマンドの引数GC種別GCが発生した要因
-fullgcFullGCJHeapProf Command
-copygcGCJHeapProf Command