Java in a Nutshell, 5th Edition [Electronic resources]

نسخه متنی -صفحه : 1191/ 311
نمايش فراداده

MemoryPoolMXBeanjava.lang.management

Java 5.0

This MXBean interface allows monitoring of the current and peak memory usage for a single memory pool. Typical Java VM implementations segregate garbage-collected heap memory into two or more memory pools based on the age of the objects. Obtain a List of MemoryPoolMXBean instances with ManagementFactory.getMemoryPoolMXBeans( ). getName( ) and getType( ) return the name and type of each pool. getUsage( ) and getPeakUsage( ) return the current and peak memory usage for the pool in the form of a MemoryUsage object.

If isUsageThresholdSupported( ) returns TRue, you can use setUsageThreshold( ) to define a memory usage threshold. The MemoryPoolMXBean then keeps track of threshold crossings and issues notifications through the javax.management.NotificationEmitter API. You can register a javax.management.NotificationListener to receive these notifications. (Note that the javax.management package is not covered in this book.) Use setCollectionUsageThreshold( ) instead to receive notifications when memory usage exceeds a specified threshold after a garbage collection pass.

public interface

MemoryPoolMXBean { // Public Instance Methods MemoryUsage

getCollectionUsage ( ); long

getCollectionUsageThreshold ( ); long

getCollectionUsageThresholdCount ( ); String[ ]

getMemoryManagerNames ( ); String

getName ( ); MemoryUsage

getPeakUsage ( ); MemoryType

getType ( ); MemoryUsage

getUsage ( ); long

getUsageThreshold ( ); long

getUsageThresholdCount ( ); boolean

isCollectionUsageThresholdExceeded ( ); boolean

isCollectionUsageThresholdSupported ( ); boolean

isUsageThresholdExceeded ( ); boolean

isUsageThresholdSupported ( ); boolean

isValid ( ); void

resetPeakUsage ( ); void

setCollectionUsageThreshold (long

threhsold ); void

setUsageThreshold (long

threshold ); }