明示管理ヒープ機能の自動配置機能は,自動配置設定ファイルを使って設定します。自動配置設定ファイルを使用することで,Javaプログラムを変更することなく明示管理ヒープ機能を使用できます。
自動配置設定ファイルには,Explicitヒープに配置したいオブジェクト,およびオブジェクトを生成する場所を指定します。なお,このファイルに指定したオブジェクト(Explicitメモリブロックに生成されたオブジェクト)から参照されているオブジェクトは,JavaヒープからExplicitメモリブロックへ移動します。オブジェクトの移動については「8.6.5 参照関係に基づくオブジェクトのJavaヒープからExplicitメモリブロックへの移動」を参照してください。
-XX:+HitachiAutoExplicitMemoryオプションを指定して,自動配置設定ファイルを使用して明示管理ヒープ機能を利用する場合の,自動配置設定ファイルの記述形式および記述する際の注意事項について説明します。
自動配置設定ファイルの内容は次のどれかに記述できます。
自動配置設定ファイルの記述形式を次に示します。
<生成点>※, <指定したオブジェクトの完全修飾クラス名> # コメント |
生成点の指定例 | 意味 |
---|---|
* | すべてのパッケージのすべてのクラスに含まれる,すべてのメソッドでの,ユーザ指定オブジェクトの生成を生成点として指定します。 |
com.sample.* | com.sampleで始まるすべてのパッケージのクラスに含まれるメソッドでの,ユーザ指定オブジェクトの生成を生成点として指定します。 そのため,下位のパッケージ(com.sample.abc,またはcom.sample.abc.test)が存在する場合は,これらのパッケージも対象となります。 |
com.sample.Main | com.sample.Mainクラスに含まれるすべてのメソッド(コンストラクタ,および静的初期化子を含む)でのユーザ指定オブジェクトの生成を生成点として指定します。 |
com.sample.Main.main(java.lang.String[]) | com.sample.Mainクラスで定義されたmain(java.lang.String[])メソッドでのユーザ指定オブジェクトの生成を生成点として指定します。 |
自動設定ファイルの記述例を次に示します。
# comment |
記述例の内容について説明します。
自動配置設定ファイルを指定する場合の注意事項を次に示します。