is new.
java.lang.Objectjava.lang.management.MemoryNotificationInfo
public class MemoryNotificationInfo
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:
A
CompositeData
CompositeData
representing the
MemoryNotificationInfo
object is stored in the
user data of a notification. The
from
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:
| Field Summary | |
|---|---|
| static String |
MEMORY_COLLECTION_THRESHOLD_EXCEEDED
Notification type denoting that the memory usage of a memory pool is greater than or equal to its collection usage threshold after the Java virtual machine has expended effort in recycling unused objects in that memory pool. |
| static String |
MEMORY_THRESHOLD_EXCEEDED
Notification type denoting that the memory usage of a memory pool has reached or exceeded its usage threshold value. |
| Constructor Summary | |
|---|---|
|
MemoryNotificationInfo
(
String
poolName,
MemoryUsage
usage, long count) Constructs a MemoryNotificationInfo object. |
|
| Method Summary | |
|---|---|
| static MemoryNotificationInfo |
from
(javax.management.openmbean.CompositeData cd)
Returns a MemoryNotificationInfo object represented by the given CompositeData . |
| long |
getCount
() Returns the number of times that the memory usage has crossed a threshold when the notification was constructed. |
| String |
getPoolName
() Returns the name of the memory pool that triggers this notification. |
| MemoryUsage |
getUsage
() Returns the memory usage of the memory pool when this notification was constructed. |
| Methods inherited from class java.lang. Object |
|---|
| clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
| Field Detail |
|---|
public static final String MEMORY_THRESHOLD_EXCEEDED
public static final String MEMORY_COLLECTION_THRESHOLD_EXCEEDED
| Constructor Detail |
|---|
public MemoryNotificationInfo(String poolName,
MemoryUsage usage,
long count)
| Method Detail |
|---|
public String getPoolName()
public MemoryUsage getUsage()
public long getCount()
public static MemoryNotificationInfofrom(javax.management.openmbean.CompositeData cd)
(CompositeDatacd)
Attribute Name Type poolName java.lang.String usage javax.management.openmbean.CompositeData count java.lang.Long