|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.management
类 MemoryUsage
java.lang.Object java.lang.management.MemoryUsage
-
public class MemoryUsage
- extends Object
表示内存使用量快照的 MemoryUsage 对象。MemoryUsage 类的实例通常由某些特定的方法构造,这些方法用于获得关于 Java 虚拟机的单个内存池或 Java 虚拟机的全部堆(或非堆)内存的内存使用量信息。
MemoryUsage 对象包含四个值:
init | 表示 Java 虚拟机在启动期间从操作系统请求的用于内存管理的初始内存容量(以字节为单位)。Java 虚拟机可能在运行过程中从操作系统请求更多的内存,也可能将内存释放给系统。init 的值可以是不明确的。 |
used | 表示当前已经使用的内存量(以字节为单位)。 |
committed | 表示保证可以由 Java 虚拟机使用的内存量(以字节为单位)。已提交的内存量可以随时间而变化(增加或减少)。Java 虚拟机可能会将内存释放给系统,committed 可以小于 init。committed 将始终大于或等于 used。 |
max | 表示可以用于内存管理的最大内存量(以字节为单位)。可以不定义其值。如果定义了该值,最大内存量可能随时间而更改。已使用的内存量和已提交的内存量将始终小于或等于 max(如果定义了 max)。如果内存分配试图增加满足以下条件的已使用内存将会失败:used > committed,即使 used <= max 仍然为 true(例如,当系统的虚拟内存不足时)。 |
+----------------------------------------------+ +//////////////// | + +//////////////// | + +----------------------------------------------+ |--------| init |---------------| used |---------------------------| committed |----------------------------------------------| max
MXBean 映射
MemoryUsage 映射到CompositeData
,其具有 from
方法中指定的属性。
- 从以下版本开始:
- 1.5
构造方法摘要 | |
---|---|
MemoryUsage(long init, long used, long committed, long max) 构造一个 MemoryUsage 对象。 |
方法摘要 | |
---|---|
static MemoryUsage |
from(CompositeData cd) 返回由给定 CompositeData 表示的 MemoryUsage 对象。 |
long |
getCommitted() 返回已提交给 Java 虚拟机使用的内存量(以字节为单位)。 |
long |
getInit() 返回 Java 虚拟机最初从操作系统请求用于内存管理的内存量(以字节为单位)。 |
long |
getMax() 返回可以用于内存管理的最大内存量(以字节为单位)。 |
long |
getUsed() 返回已使用的内存量(以字节为单位)。 |
String |
toString() 返回此内存使用量的描述性表示形式。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
MemoryUsage
public MemoryUsage(long init, long used, long committed, long max)
-
构造一个 MemoryUsage 对象。
- 参数:
-
init
- Java 虚拟机分配的初始内存量(以字节为单位);或者,如果未定义,则为 -1。 -
used
- 已经使用的内存量(以字节为单位)。 -
committed
- 已经提交的内存量(以字节为单位)。 -
max
- 可以使用的最大内存量(以字节为单位);或者,如果未定义,则为 -1。 - 抛出:
-
IllegalArgumentException
- 如果- init 或 max 的值为负数,但不是 -1;或者
- used 或 committed 的值为负数;或者
- used 大于 committed 的值;或者
- committed 大于 max 的值(如果 max 已定义)。
方法详细信息 |
---|
getInit
public long getInit()
- 返回 Java 虚拟机最初从操作系统请求用于内存管理的内存量(以字节为单位)。如果没有定义初始内存大小,此方法将返回 -1。
-
- 返回:
- 内存的初始大小(以字节为单位);如果未定义,则返回 -1。
getUsed
public long getUsed()
- 返回已使用的内存量(以字节为单位)。
-
- 返回:
- 已使用的内存量(以字节为单位)。
getCommitted
public long getCommitted()
- 返回已提交给 Java 虚拟机使用的内存量(以字节为单位)。此内存量保证可供 Java 虚拟机使用。
-
- 返回:
- 已提交的内存量(以字节为单位)。
getMax
public long getMax()
-
返回可以用于内存管理的最大内存量(以字节为单位)。如果没有定义最大内存大小,此方法将返回 -1。
如果此内存量大于已提交的内存量,则不能保证内存管理能够使用此内存量。即使已使用的内存量没有超过这个最大大小,Java 虚拟机也可能会无法分配内存。
-
- 返回:
- 内存的最大量(以字节为单位);如果未定义,则返回 -1。
toString
public String toString()
from
public static MemoryUsage from(CompositeData cd)
-
返回由给定 CompositeData 表示的 MemoryUsage 对象。给定的 CompositeData 必须包含以下属性:
属性名称 类型 init java.lang.Long used java.lang.Long committed java.lang.Long max java.lang.Long -
- 参数:
-
cd
- 表示 MemoryUsage 的 CompositeData - 返回:
- 如果 cd 不为 null,则返回由 cd 表示的 MemoryUsage 对象;否则,返回 null。
- 抛出:
-
IllegalArgumentException
- 如果 cd 不表示具有上述属性的 MemoryUsage。
所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |