java.lang.Object
java.lang.management.MemoryNotificationInfo
public class MemoryNotificationInfo extends Object
メモリー通知に関する情報です。
 
 メモリー・プールのメモリー使用量がしきい値を超えていることをJava仮想マシンが検出すると、MemoryMXBeanによりメモリー通知が発行されます。 発行された通知には、検出された条件に関する次のメモリー通知情報が含まれています。 
 
- メモリー・プールの名前
- 通知が構築されたときのメモリー・プールのメモリー使用量
- 通知が構築されたときに、メモリー使用量がしきい値を超えた回数。 使用量しきい値通知の場合、このカウントは使用量しきい値カウントになります。 コレクション使用量しきい値通知の場合、このカウントはコレクション使用量しきい値カウントになります。
 MemoryNotificationInfoオブジェクトを表すCompositeDataは、通知のユーザー・データに格納されます。 fromメソッドは、CompositeDataからMemoryNotificationInfoオブジェクトへの変換を行います。 たとえば、 
 
      Notification notif;
      // receive the notification emitted by MemoryMXBean and set to notif
      ...
      String notifType = notif.getType();
      if (notifType.equals(MemoryNotificationInfo.MEMORY_THRESHOLD_EXCEEDED) ||
          notifType.equals(MemoryNotificationInfo.MEMORY_COLLECTION_THRESHOLD_EXCEEDED)) {
          // retrieve the memory notification information
          CompositeData cd = (CompositeData) notif.getUserData();
          MemoryNotificationInfo info = MemoryNotificationInfo.from(cd);
          ....
      }
 
 MemoryMXBeanが発行する通知の型は次のとおりです。
 
- 使用量しきい値超過通知。
 この通知は、メモリー・プールのメモリー使用量が増加し、使用量しきい値に達したか超えたときに発行されます。 以降、使用量しきい値を超えても、メモリー使用量が使用量しきい値未満に戻るまで、通知は発行されません。
- 使用量しきい値超過通知。
 この通知は、Java仮想マシンがメモリー・プールで使用しないオブジェクトのリサイクルに最善を尽くしたあと、メモリー・プールのメモリー使用量がコレクション使用量しきい値以上であるときに発行されます。
- 導入されたバージョン:
- 1.5
- 
フィールドのサマリーフィールド修飾子と型フィールド説明static final StringJava仮想マシンがメモリー・プールで使用しないオブジェクトのリサイクルに最善を尽くしたあと、メモリー・プールのメモリー使用量がコレクション使用量しきい値以上であることを表す通知型。static final Stringメモリー・プールのメモリー使用量が使用量しきい値に達したか超えたことを表す通知型。
- 
コンストラクタのサマリーコンストラクタコンストラクタ説明MemoryNotificationInfo(String poolName, MemoryUsage usage, long count) MemoryNotificationInfoオブジェクトを構築します。
- 
メソッドのサマリー修飾子と型メソッド説明static MemoryNotificationInfofrom(CompositeData cd) 指定されたCompositeDataによって表されるMemoryNotificationInfoオブジェクトを返します。longgetCount()通知が構築されたときに、メモリー使用量がしきい値を超えた回数を返します。この通知をトリガーするメモリー・プールの名前を返します。getUsage()通知が構築されたときのメモリー・プールのメモリー使用量を返します。
- 
フィールド詳細- 
MEMORY_THRESHOLD_EXCEEDEDpublic static final String MEMORY_THRESHOLD_EXCEEDEDメモリー・プールのメモリー使用量が使用量しきい値に達したか超えたことを表す通知型。 この通知はMemoryMXBeanから出力されます。 以降、使用量しきい値を超えても、メモリー使用量が使用量しきい値未満に戻るまで、通知は発行されません。 この通知の型の値はjava.management.memory.threshold.exceededです。- 関連項目:
 
- 
MEMORY_COLLECTION_THRESHOLD_EXCEEDEDpublic static final String MEMORY_COLLECTION_THRESHOLD_EXCEEDEDJava仮想マシンがメモリー・プールで使用しないオブジェクトのリサイクルに最善を尽くしたあと、メモリー・プールのメモリー使用量がコレクション使用量しきい値以上であることを表す通知型。 この通知はMemoryMXBeanから出力されます。 この通知の型の値はjava.management.memory.collection.threshold.exceededです。- 関連項目:
 
 
- 
- 
コンストラクタの詳細- 
MemoryNotificationInfopublic MemoryNotificationInfo(String poolName, MemoryUsage usage, long count) MemoryNotificationInfoオブジェクトを構築します。- パラメータ:
- poolName- この通知をトリガーするメモリー・プールの名前。
- usage- メモリー・プールのメモリー使用量。
- count- しきい値超過回数。
 
 
- 
- 
メソッドの詳細- 
getPoolNamepublic String getPoolName()この通知をトリガーするメモリー・プールの名前を返します。 メモリー・プールの使用量はしきい値を超えました。- 戻り値:
- この通知をトリガーするメモリー・プールの名前
 
- 
getUsagepublic MemoryUsage getUsage()通知が構築されたときのメモリー・プールのメモリー使用量を返します。- 戻り値:
- 通知が構築されたときのメモリー・プールのメモリー使用量
 
- 
getCountpublic long getCount()通知が構築されたときに、メモリー使用量がしきい値を超えた回数を返します。 使用量しきい値通知の場合、このカウントは使用量しきい値カウントになります。 コレクション使用量しきい値通知の場合、このカウントはコレクション使用量しきい値カウントになります。- 戻り値:
- 通知が構築されたときに、メモリー使用量がしきい値を超えた回数。
 
- 
frompublic static MemoryNotificationInfo from(CompositeData cd) 指定されたCompositeDataによって表されるMemoryNotificationInfoオブジェクトを返します。 指定されたCompositeDataは、次の属性を含む必要があります。属性名 型 poolName java.lang.Stringusage javax.management.openmbean.CompositeDatacount java.lang.Long- パラメータ:
- cd-- MemoryNotificationInfoを表す- CompositeData
- 戻り値:
- cdが- nullでない場合は- cdにより表される- MemoryNotificationInfoオブジェクト、そうでない場合は- null。
- throws:
- IllegalArgumentException-- cdが- MemoryNotificationInfoオブジェクトを表さない場合。
 
 
-