java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.lang.management
类 MemoryNotificationInfo

java.lang.Object
  继承者 java.lang.management.MemoryNotificationInfo

public class MemoryNotificationInfo
extends Object

关于内存通知的信息。

当 Java 虚拟机检测到内存池的内存使用量超过了阈值时,MemoryMXBean 将发出内存通知。发出的通知将包含关于检测到的情况的内存通知信息:

  • 内存池的名称。
  • 构造通知时内存池的内存使用量。
  • 构造通知时,内存使用量超过阈值的次数。对于使用量阈值通知,此计数将为使用量阈值计数。对于集合使用量阈值通知,此计数将为集合使用量阈值计数

表示 MemoryNotificationInfo 对象的 CompositeData 存储在通知用户数据中。提供了表单方法将 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 发出的通知类型为:

从以下版本开始:
1.5

字段摘要
static String MEMORY_COLLECTION_THRESHOLD_EXCEEDED
          表示当 Java 虚拟机对内存池中的不使用的对象进行了回收工作之后,内存池的内存使用量大于或等于其集合使用量阈值的通知类型。
static String MEMORY_THRESHOLD_EXCEEDED
          表示内存池的内存使用量已达到或超过其使用量阈值的通知类型。
 
构造方法摘要
MemoryNotificationInfo(String poolName, MemoryUsage usage, long count)
          构造一个 MemoryNotificationInfo 对象。
 
方法摘要
static MemoryNotificationInfo from(CompositeData cd)
          返回由给定 CompositeData 表示的 MemoryNotificationInfo 对象。
 long getCount()
          返回构造通知时内存使用量超过阈值的次数。
 String getPoolName()
          返回触发此通知的内存池的名称。
 MemoryUsage getUsage()
          返回构造此通知时内存池的内存使用量。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

MEMORY_THRESHOLD_EXCEEDED

public static final String MEMORY_THRESHOLD_EXCEEDED
表示内存池的内存使用量已达到或超过其使用量阈值的通知类型。此通知由 MemoryMXBean 发出。后续的使用量阈值超过情况不会导致更多的通知,一直到内存使用量返回到小于使用量阈值的状态为止。此通知类型的值为 java.management.memory.threshold.exceeded

另请参见:
常量字段值

MEMORY_COLLECTION_THRESHOLD_EXCEEDED

public static final String MEMORY_COLLECTION_THRESHOLD_EXCEEDED
表示当 Java 虚拟机对内存池中的不使用的对象进行了回收工作之后,内存池的内存使用量大于或等于其集合使用量阈值的通知类型。此通知由 MemoryMXBean 发出。此通知类型的值为 java.management.memory.collection.threshold.exceeded

另请参见:
常量字段值
构造方法详细信息

MemoryNotificationInfo

public MemoryNotificationInfo(String poolName,
                              MemoryUsage usage,
                              long count)
构造一个 MemoryNotificationInfo 对象。

参数:
poolName - 触发此通知的内存池的名称。
usage - 内存池的内存使用量。
count - 超过阈值的次数计数。
方法详细信息

getPoolName

public String getPoolName()
返回触发此通知的内存池的名称。内存池使用量已经超过阈值。

返回:
触发此通知的内存池的名称。

getUsage

public MemoryUsage getUsage()
返回构造此通知时内存池的内存使用量。

返回:
构造此通知时内存池的内存使用量。

getCount

public long getCount()
返回构造通知时内存使用量超过阈值的次数。对于使用量阈值通知,此计数将为阈值计数。对于集合使用量阈值通知,此计数将为集合使用量阈值计数

返回:
构造通知时,内存使用量超过阈值的次数。

from

public static MemoryNotificationInfo from(CompositeData cd)
返回由给定 CompositeData 表示的 MemoryNotificationInfo 对象。此给定的 CompositeData 必须包含以下属性:
属性名称 类型
poolName java.lang.String
usage javax.management.openmbean.CompositeData
count java.lang.Long

参数:
cd - 表示 MemoryNotificationInfoCompositeData
返回:
如果 cd 不为 null,则返回由 cd 表示的 MemoryNotificationInfo 对象;否则,返回 null
抛出:
IllegalArgumentException - 如果 cd 不表示 MemoryNotificationInfo 对象。

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策