Class GarbageCollectionNotificationInfo

java.lang.Object
com.sun.management.GarbageCollectionNotificationInfo
All Implemented Interfaces:
CompositeDataView

public class GarbageCollectionNotificationInfo
extends Object
implements CompositeDataView
The information about a garbage collection

A garbage collection notification is emitted by GarbageCollectorMXBean when the Java virtual machine completes a garbage collection action The notification emitted will contain the garbage collection notification information about the status of the memory:

  • The name of the garbage collector used to perform the collection.
  • The action performed by the garbage collector.
  • The cause of the garbage collection action.
  • A GcInfo object containing some statistics about the GC cycle (start time, end time) and the memory usage before and after the GC cycle.

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

      Notification notif;

      // receive the notification emitted by a GarbageCollectorMXBean and set to notif
      ...

      String notifType = notif.getType();
      if (notifType.equals(GarbageCollectionNotificationInfo.GARBAGE_COLLECTION_NOTIFICATION)) {
          // retrieve the garbage collection notification information
          CompositeData cd = (CompositeData) notif.getUserData();
          GarbageCollectionNotificationInfo info = GarbageCollectionNotificationInfo.from(cd);
          ....
      }
 

The type of the notification emitted by a GarbageCollectorMXBean is:

  • Field Details

  • Constructor Details

    • GarbageCollectionNotificationInfo

      public GarbageCollectionNotificationInfo​(String gcName, String gcAction, String gcCause, GcInfo gcInfo)
      Constructs a GarbageCollectionNotificationInfo object.
      Parameters:
      gcName - The name of the garbage collector used to perform the collection
      gcAction - The name of the action performed by the garbage collector
      gcCause - The cause of the garbage collection action
      gcInfo - a GcInfo object providing statistics about the GC cycle
  • Method Details

    • getGcName

      public String getGcName()
      Returns the name of the garbage collector used to perform the collection
      Returns:
      the name of the garbage collector used to perform the collection
    • getGcAction

      public String getGcAction()
      Returns the action performed by the garbage collector
      Returns:
      the action performed by the garbage collector
    • getGcCause

      public String getGcCause()
      Returns the cause of the garbage collection
      Returns:
      the cause of the garbage collection
    • getGcInfo

      public GcInfo getGcInfo()
      Returns the GC information related to the last garbage collection
      Returns:
      the GC information related to the last garbage collection
    • from

      Returns a GarbageCollectionNotificationInfo object represented by the given CompositeData. The given CompositeData must contain the following attributes:
      description
      Attribute Name Type
      gcName java.lang.String
      gcAction java.lang.String
      gcCause java.lang.String
      gcInfo javax.management.openmbean.CompositeData
      Parameters:
      cd - CompositeData representing a GarbageCollectionNotificationInfo
      Returns:
      a GarbageCollectionNotificationInfo object represented by cd if cd is not null; null otherwise.
      Throws:
      IllegalArgumentException - if cd does not represent a GarbaageCollectionNotificationInfo object.