Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 拡張編


7.13.3 設定ファイルを使った明示管理ヒープ機能の適用対象の制御

自動配置機能で作成したExplicitメモリブロックにあるオブジェクトから参照されているオブジェクトは,GC発生時にJavaヒープからExplicitヒープへ参照関係に基づいて移動します。明示管理ヒープ機能適用除外クラス指定機能は,設定ファイルを使って,この参照関係に基づく移動の対象となるオブジェクトを明示管理ヒープ機能の適用対象から除外し,Explicitヒープへ移動させないようにします。この機能を使用すると,アプリケーションの停止まで使用されるオブジェクトなど,FullGCでも回収されないオブジェクトを,明示管理ヒープ機能の適用対象から除外できます。オブジェクトの参照関係に基づいた移動については「7.6.5 参照関係に基づくオブジェクトのJavaヒープからExplicitメモリブロックへの移動」を参照してください。

〈この項の構成〉

(1) 設定ファイルの種類

明示管理ヒープ機能適用除外クラス指定機能で使用するファイルには,次の2種類があります。

(2) 設定ファイルの指定と明示管理ヒープ機能の適用範囲

明示管理ヒープ機能適用除外無効設定ファイルの指定は,明示管理ヒープ機能適用除外設定ファイルの指定よりも優先されます。

パッケージ「com.sample」を例に,設定ファイルの指定と明示管理ヒープ機能の適用範囲について説明します。パッケージ「com.sample」には,ClassAとClassBの二つのクラスがあります。各設定ファイルを次のように指定します。

明示管理ヒープ機能適用除外設定ファイルの指定には,ClassAとClassBの両方が含まれています。しかし,明示管理ヒープ機能適用除外無効設定ファイルの指定が優先されるため,次の図のように,明示管理ヒープ機能の適用が除外されるのはClassAだけとなり,ClassBには明示管理ヒープ機能が適用されます。

[図データ]

(3) 設定ファイルの記述形式

設定ファイルの記述形式を次に示します。

(4) 設定ファイルの記述例

明示管理ヒープ機能適用除外設定ファイル,および明示管理ヒープ機能適用除外無効設定ファイルの記述例を次に示します。

なお,ここで説明する記述例は,パッケージ名が「com.sample」で,次の図に示すクラス構造とします。

図7‒26 クラス構造の例

[図データ]