- All Implemented Interfaces:
CompositeDataView
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:
- A garbage collection notification.
Used by every notification emitted by the garbage collector, the details about the notification are provided in the action String
- Since:
- 1.7
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Notification type denoting that the Java virtual machine has completed a garbage collection cycle. -
Constructor Summary
ConstructorDescriptionGarbageCollectionNotificationInfo
(String gcName, String gcAction, String gcCause, GcInfo gcInfo) Constructs aGarbageCollectionNotificationInfo
object. -
Method Summary
Modifier and TypeMethodDescriptionfrom
(CompositeData cd) Returns aGarbageCollectionNotificationInfo
object represented by the givenCompositeData
.Returns the action performed by the garbage collectorReturns the cause of the garbage collectionReturns the GC information related to the last garbage collectionReturns the name of the garbage collector used to perform the collectionReturn aCompositeData
corresponding to the values in this object.
-
Field Details
-
GARBAGE_COLLECTION_NOTIFICATION
Notification type denoting that the Java virtual machine has completed a garbage collection cycle. This notification is emitted by aGarbageCollectorMXBean
. The value of this notification type iscom.sun.management.gc.notification
.- See Also:
-
-
Constructor Details
-
GarbageCollectionNotificationInfo
public GarbageCollectionNotificationInfo(String gcName, String gcAction, String gcCause, GcInfo gcInfo) Constructs aGarbageCollectionNotificationInfo
object.- Parameters:
gcName
- The name of the garbage collector used to perform the collectiongcAction
- The name of the action performed by the garbage collectorgcCause
- The cause of the garbage collection actiongcInfo
- a GcInfo object providing statistics about the GC cycle
-
-
Method Details
-
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
Returns the action performed by the garbage collector- Returns:
- the action performed by the garbage collector
-
getGcCause
Returns the cause of the garbage collection- Returns:
- the cause of the garbage collection
-
getGcInfo
Returns the GC information related to the last garbage collection- Returns:
- the GC information related to the last garbage collection
-
from
Returns aGarbageCollectionNotificationInfo
object represented by the givenCompositeData
. The givenCompositeData
must contain the following attributes:Attribute Name Type gcName java.lang.String
gcAction java.lang.String
gcCause java.lang.String
gcInfo javax.management.openmbean.CompositeData
- Parameters:
cd
-CompositeData
representing aGarbageCollectionNotificationInfo
- Returns:
- a
GarbageCollectionNotificationInfo
object represented bycd
ifcd
is notnull
;null
otherwise. - Throws:
IllegalArgumentException
- ifcd
does not represent aGarbaageCollectionNotificationInfo
object.
-
toCompositeData
Description copied from interface:CompositeDataView
Return a
CompositeData
corresponding to the values in this object. The returned value should usually be an instance ofCompositeDataSupport
, or a class that serializes as aCompositeDataSupport
via awriteReplace
method. Otherwise, a remote client that receives the object might not be able to reconstruct it.- Specified by:
toCompositeData
in interfaceCompositeDataView
- Parameters:
ct
- The expectedCompositeType
of the returned value. If the returned value iscd
, thencd.getCompositeType().equals(ct)
should be true. Typically this will be becausecd
is aCompositeDataSupport
constructed withct
as itsCompositeType
.- Returns:
- the
CompositeData
.
-