java.lang.Object
java.lang.management.MemoryUsage
public class MemoryUsage extends Object
MemoryUsage
オブジェクトは、メモリー使用量のスナップショットを表します。 MemoryUsage
クラスのインスタンスは、通常、Java仮想マシンの個々のメモリー・プール、またはJava仮想マシンのヒープまたは非ヒープ・メモリー全体に関するメモリー使用量情報を取得するために使用されるメソッドによって構成されます。
MemoryUsage
オブジェクトには、次の4つの値が含まれます:
値 | 説明 |
---|---|
init |
起動中にJava仮想マシンがオペレーティング・システムから要求するメモリー管理のための初期メモリー量(バイト単位)を表す。 Java仮想マシンは、オペレーティング・システムから追加のメモリーを要求したり、システム時間の経過とともにメモリーを解放したりすることもできる。 init の値は未定義である可能性があります。
|
used |
現在使用されているメモリーの量(バイト単位)を表す |
committed |
Java仮想マシンが使用できることが保証されているメモリーの量(バイト単位)を表す。 コミットされたメモリーの量は、時間の経過とともに変化(増減)する。 Java仮想マシンはシステムにメモリーを解放し、committed はinit より小さくなる可能性があります。committed は常にused 以上になります。
|
max |
メモリー管理に使用できる最大メモリー量(バイト単位)を表す。 この値は定義しないことも可能。 定義する場合、メモリーの最大量は時間の経過とともに変化する可能性がある。 max が定義されている場合、使用済メモリーおよびコミット済メモリーの量は、常にmax 以下になります。 used <= max がtrueの場合でも、used > committed になるように使用済メモリーを増やそうとすると、メモリー割当てが失敗することがあります。(たとえば、システムが仮想メモリーで不足している場合です)。
|
+----------------------------------------------+ +//////////////// | + +//////////////// | + +----------------------------------------------+ |--------| init |---------------| used |---------------------------| committed |----------------------------------------------| max
MXBeanのマッピング
MemoryUsage
は、from
メソッドで指定された属性を持つCompositeData
にマップされます。- 導入されたバージョン:
- 1.5
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明static MemoryUsage
from
(CompositeData cd) 指定されたCompositeData
で表されるMemoryUsage
オブジェクトを返します。long
Java仮想マシンが使用するようコミットされたメモリーの量(バイト単位)を返します。long
getInit()
Java仮想マシンが初期にメモリー管理についてオペレーティング・システムから要求するメモリーの量(バイト単位)を返します。long
getMax()
メモリー管理に使用できる最大メモリー量(バイト単位)を返します。long
getUsed()
usedメモリーの量(バイト単位)を返します。toString()
このメモリーの使用量の説明的表現を返します。
-
コンストラクタの詳細
-
MemoryUsage
public MemoryUsage(long init, long used, long committed, long max) MemoryUsage
オブジェクトを構築します。- パラメータ:
init
- Java仮想マシンが割り当てるメモリーの初期量(バイト単位)。未定義の場合は-1
。used
- usedメモリーの量(バイト単位)。committed
- 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()usedメモリーの量(バイト単位)を返します。- 戻り値:
- usedメモリーの量(バイト単位)
-
getCommitted
public long getCommitted()Java仮想マシンが使用するようコミットされたメモリーの量(バイト単位)を返します。 このメモリーの量は、Java仮想マシンが使用するよう保証された量です。- 戻り値:
- committedメモリーの量(バイト単位)
-
getMax
public long getMax()メモリー管理に使用できる最大メモリー量(バイト単位)を返します。 最大メモリー・サイズが未定義の場合、このメソッドは-1
を返します。このメモリーの量がcommittedメモリーの量より大きい場合、このメモリー量はメモリー管理に利用できることが保証されません。 usedメモリーの量がこの最大サイズを超えない場合でも、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
を表していない場合。
-