Class MemoryNotificationInfo

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

public class MemoryNotificationInfo extends Object
The information about a memory notification.

A memory notification is emitted by MemoryMXBean when the Java virtual machine detects that the memory usage of a memory pool is exceeding a threshold value. The notification emitted will contain the memory notification information about the detected condition:

  • The name of the memory pool.
  • The memory usage of the memory pool when the notification was constructed.
  • The number of times that the memory usage has crossed a threshold when the notification was constructed. For usage threshold notifications, this count will be the usage threshold count. For collection threshold notifications, this count will be the collection usage threshold count.

A CompositeData representing the MemoryNotificationInfo object is stored in the user data of a notification. The from method is provided to convert from a CompositeData to a MemoryNotificationInfo object. For example:

      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);
          ....
      }
 

The types of notifications emitted by MemoryMXBean are:

Since:
1.5