Java虚拟机的内存
运行时间
所有的Java应用程序都有一个Runtime类的单个实例。这个类作为应用程序和应用程序执行环境之间的接口。当前的Runtime对象可以通过getRuntime方法获取。
-
- public long totalMemory()
-
- Java仮想マシンのメモリーの総容量を返します。ホストの環境によっては、このメソッドによって返される値が時間とともに変化する場合があります。
-
- 任意の指定された型のオブジェクトを格納するのに必要なメモリー容量は、実装によって異なります。
-
- 戻り値:
-
- 現在および将来のオブジェクトに利用可能な現在のメモリーの総容量(バイト単位)。
-
- public long maxMemory()
-
- Java仮想マシンが使用を試みる最大メモリー容量を返します。固有の制限が存在しない場合、値Long.MAX_VALUEが返されます。
-
- 戻り値:
- 仮想マシンが使用を試みる最大メモリー容量(単位はバイト)
确认实施
範例代碼
public class HeapTest {
public static void main(String[] args) {
long initm = Runtime.getRuntime().totalMemory()/1024/1024;
long maxm = Runtime.getRuntime().maxMemory()/1024/1024;
System.out.println("Runtime start memory:"+initm+"M");
System.out.println("Runtime max memory:"+maxm+"M");
System.out.println("System memory:"+initm*64/1024+"G");
System.out.println("System memory:"+maxm*4/1024+"G");
}
}
Runtime start memory:243M
Runtime max memory:3586M
System memory:15G
System memory:14G
