モジュール java.management
パッケージ java.lang.management

クラスMemoryNotificationInfo

java.lang.Object
java.lang.management.MemoryNotificationInfo

public class MemoryNotificationInfo extends Object
メモリー通知に関する情報です。

メモリー・プールのメモリー使用量がしきい値を超えていることをJava仮想マシンが検出すると、MemoryMXBeanによりメモリー通知が発行されます。 発行された通知には、検出された条件に関する次のメモリー通知情報が含まれています。

  • メモリー・プールの名前
  • 通知が構築されたときのメモリー・プールのメモリー使用量
  • 通知が構築されたときに、メモリー使用量がしきい値を超えた回数。 使用量しきい値通知の場合、このカウントは使用量しきい値カウントになります。 コレクション使用量しきい値通知の場合、このカウントはコレクション使用量しきい値カウントになります。

MemoryNotificationInfoオブジェクトを表すCompositeDataは、notificationuser dataに格納されます。 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