Java:HeapMemory和DirectMemory配置与使用介绍

目录

一、Heap内存

1、查看Heap内存配置的最大值

2、配置Heap内存最大值的方式

3、配置Heap内存最小值的方式

4、查看已使用Heap内存的方式

5、查看未使用Heap内存的方式

二、Direct内存

1、查看Direct内存配置的最大值

2、配置Direct内存最大值的方式

3、获取Direct内存已使用大小


一、Heap内存

1、查看Heap内存配置的最大值

Runtime.getRuntime().maxMemory()

2、配置Heap内存最大值的方式

–Xmx

3、配置Heap内存最小值的方式

–Xms

4、查看已使用Heap内存的方式

Runtime.getRuntime().totalMemory()

5、查看未使用Heap内存的方式

Runtime.getRuntime().freeMemory()

二、Direct内存

1、查看Direct内存配置的最大值

sun.misc.VM.maxDirectMemory() 

2、配置Direct内存最大值的方式

使用JVM参数进行配置

-XX:MaxDirectMemorySize=

若未使用上述JVM参数,会采用与下述JVM参数相同的值

–Xmx

若上述2个JVM参数都没配置,则其值会与如下API获取的值一致

Runtime.getRuntime().maxMemory()

3、获取Direct内存已使用大小

sun.misc.SharedSecrets.getJavaNioAccess().getDirectBufferPool().getMemoryUsed()

你可能感兴趣的:(Java,java)