|
intra-mart(R) 6.0.13 | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object jp.co.intra_mart.foundation.service.provider.GarbageController
ガーベージコレクタを実行するクラスです。
このクラスにリスナーを登録しておくことにより、 gc メソッドが呼び出された時に任意のロジックを実行させることができます。 この機能を利用することにより、ガーベージコレクタ実行前に キャッシュデータなどを削除して、効率的にメモリ空間を開放することができます。
メソッドの概要 | |
static void |
addConditioner(GCConditioner conditioner)
推奨されていません。 |
static void |
addListener(EventListener listener)
リスナーを登録します。 |
static void |
clean()
システムのガベージコレクタを実行します。 |
static void |
removeConditioner(GCConditioner conditioner)
推奨されていません。 |
static boolean |
removeListener(EventListener listener)
指定されたリスナーを削除します。 |
static void |
startAutomaticExecution(long millis)
推奨されていません。 gc によるシステム停止や監視スレッドを停止処理しないことによるメモリリークなどの問題を引き起こす危険性があります。 |
static void |
stopAutomaticExecution()
推奨されていません。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
メソッドの詳細 |
public static void addListener(EventListener listener) throws NullPointerException
NullPointerException
- listener が null の場合clean()
,
EventListener.handleEvent()
public static boolean removeListener(EventListener listener)
public static void startAutomaticExecution(long millis)
この機能は、新しい専用のスレッドで millis ミリ秒おきに addConditioner メソッドで登録されたコンディショナオブジェクトを 実行して gc 実行の必要があると判断された場合に clean メソッドを実行します。 この自動実行スレッドは、stopAutomaticExecution メソッドが 呼び出されるまで上記処理を継続実行します。
gc 実行をするかどうかの判定をするためのコンディショナオブジェクトが
一つも登録されていない場合、このメソッドは何も行いません。
gc 自動実行モードが有効な状態でも、clean メソッドを呼び出すことによって
明示的に gc を実行することができます。
millis
- gc 自動実行のための監視間隔public static void stopAutomaticExecution()
public static void addConditioner(GCConditioner conditioner)
conditioner
- コンディショナ
NullPointerException
- conditioner が null の場合public static void removeConditioner(GCConditioner conditioner)
conditioner
- コンディショナpublic static void clean()
このメソッドは、addListener メソッドで登録された全てのイベントリスナーを
呼び出した後に、VMのガーベージコレクタを実行します。
ガーベージコレクタの実行は、以下の呼出とおなじです。
System.gc()
このメソッドは、複数のスレッドからの多重処理を行いません。 あるスレッドによる実行中に他のスレッドでこのメソッドが呼び出された場合、 このメソッドは何もせずにリターンします。
System.gc()
|
intra-mart(R) 6.0.13 | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |