Java Doc for MemoryUsage.java in  » 6.0-JDK-Core » lang » java » lang » management » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Home
Java Source Code / Java Documentation
1.6.0 JDK Core
2.6.0 JDK Modules
3.6.0 JDK Modules com.sun
4.6.0 JDK Modules com.sun.java
5.6.0 JDK Modules sun
6.6.0 JDK Platform
7.Ajax
8.Apache Harmony Java SE
9.Aspect oriented
10.Authentication Authorization
11.Blogger System
12.Build
13.Byte Code
14.Cache
15.Chart
16.Chat
17.Code Analyzer
18.Collaboration
19.Content Management System
20.Database Client
21.Database DBMS
22.Database JDBC Connection Pool
23.Database ORM
24.Development
25.EJB Server
26.ERP CRM Financial
27.ESB
28.Forum
29.Game
30.GIS
31.Graphic 3D
32.Graphic Library
33.Groupware
34.HTML Parser
35.IDE
36.IDE Eclipse
37.IDE Netbeans
38.Installer
39.Internationalization Localization
40.Inversion of Control
41.Issue Tracking
42.J2EE
43.J2ME
44.JBoss
45.JMS
46.JMX
47.Library
48.Mail Clients
49.Music
50.Net
51.Parser
52.PDF
53.Portal
54.Profiler
55.Project Management
56.Report
57.RSS RDF
58.Rule Engine
59.Science
60.Scripting
61.Search Engine
62.Security
63.Sevlet Container
64.Source Control
65.Swing Library
66.Template Engine
67.Test Coverage
68.Testing
69.UML
70.Web Crawler
71.Web Framework
72.Web Mail
73.Web Server
74.Web Services
75.Web Services apache cxf 2.2.6
76.Web Services AXIS2
77.Wiki Engine
78.Workflow Engines
79.XML
80.XML UI
Java Source Code / Java Documentation » 6.0 JDK Core » lang » java.lang.management 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   java.lang.management.MemoryUsage

MemoryUsage
public class MemoryUsage (Code)
A MemoryUsage object represents a snapshot of memory usage. Instances of the MemoryUsage class are usually constructed by methods that are used to obtain memory usage information about individual memory pool of the Java virtual machine or the heap or non-heap memory of the Java virtual machine as a whole.

A MemoryUsage object contains four values:

    init represents the initial amount of memory (in bytes) that the Java virtual machine requests from the operating system for memory management during startup. The Java virtual machine may request additional memory from the operating system and may also release memory to the system over time. The value of init may be undefined.
    used represents the amount of memory currently used (in bytes).
    committed represents the amount of memory (in bytes) that is guaranteed to be available for use by the Java virtual machine. The amount of committed memory may change over time (increase or decrease). The Java virtual machine may release memory to the system and committed could be less than init. committed will always be greater than or equal to used.
    max represents the maximum amount of memory (in bytes) that can be used for memory management. Its value may be undefined. The maximum amount of memory may change over time if defined. The amount of used and committed memory will always be less than or equal to max if max is defined. A memory allocation may fail if it attempts to increase the used memory such that used > committed even if used <= max would still be true (for example, when the system is low on virtual memory).
Below is a picture showing an example of a memory pool:

 +----------------------------------------------+
 +////////////////           |                  +
 +////////////////           |                  +
 +----------------------------------------------+
 |--------|
 init
 |---------------|
 used
 |---------------------------|
 committed 
 |----------------------------------------------|
 max 
 

MXBean Mapping

MemoryUsage is mapped to a CompositeData CompositeData with attributes as specified in the MemoryUsage.from from method.
author:
   Mandy Chung
version:
   1.23, 05/05/07
since:
   1.5



Constructor Summary
public  MemoryUsage(long init, long used, long committed, long max)
     Constructs a MemoryUsage object.

Method Summary
public static  MemoryUsagefrom(CompositeData cd)
     Returns a MemoryUsage object represented by the given CompositeData.
public  longgetCommitted()
     Returns the amount of memory in bytes that is committed for the Java virtual machine to use.
public  longgetInit()
     Returns the amount of memory in bytes that the Java virtual machine initially requests from the operating system for memory management.
public  longgetMax()
     Returns the maximum amount of memory in bytes that can be used for memory management.
public  longgetUsed()
     Returns the amount of used memory in bytes.
public  StringtoString()
     Returns a descriptive representation of this memory usage.


Constructor Detail
MemoryUsage
public MemoryUsage(long init, long used, long committed, long max)(Code)
Constructs a MemoryUsage object.
Parameters:
  init - the initial amount of memory in bytes thatthe Java virtual machine allocates;or -1 if undefined.
Parameters:
  used - the amount of used memory in bytes.
Parameters:
  committed - the amount of committed memory in bytes.
Parameters:
  max - the maximum amount of memory in bytes thatcan be used; or -1 if undefined.
throws:
  IllegalArgumentException - if
  • the value of init or max is negativebut not -1; or
  • the value of used or committed is negative;or
  • used is greater than the value of committed;or
  • committed is greater than the value of max max if defined.




Method Detail
from
public static MemoryUsage from(CompositeData cd)(Code)
Returns a MemoryUsage object represented by the given CompositeData. The given CompositeData must contain the following attributes:

Attribute Name Type
init java.lang.Long
used java.lang.Long
committed java.lang.Long
max java.lang.Long

Parameters:
  cd - CompositeData representing a MemoryUsage
throws:
  IllegalArgumentException - if cd does notrepresent a MemoryUsage with the attributes describedabove. a MemoryUsage object represented by cdif cd is not null;null otherwise.



getCommitted
public long getCommitted()(Code)
Returns the amount of memory in bytes that is committed for the Java virtual machine to use. This amount of memory is guaranteed for the Java virtual machine to use. the amount of committed memory in bytes.



getInit
public long getInit()(Code)
Returns the amount of memory in bytes that the Java virtual machine initially requests from the operating system for memory management. This method returns -1 if the initial memory size is undefined. the initial size of memory in bytes;-1 if undefined.



getMax
public long getMax()(Code)
Returns the maximum amount of memory in bytes that can be used for memory management. This method returns -1 if the maximum memory size is undefined.

This amount of memory is not guaranteed to be available for memory management if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size. the maximum amount of memory in bytes; -1 if undefined.




getUsed
public long getUsed()(Code)
Returns the amount of used memory in bytes. the amount of used memory in bytes.



toString
public String toString()(Code)
Returns a descriptive representation of this memory usage.



Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.