Java-启动JVM时,-Xms和-Xmx参数是什么?
请说明JVM 中Xms和Xmx参数的使用。它们的默认值是多少?
回答:
该标志Xmx
指定Java虚拟机(JVM)的最大内存分配池,而Xms指定初始内存分配池。
这意味着你的JVM将以Xms
一定数量的内存启动,并且将能够使用最大Xmx
数量的内存。例如,启动如下所示的JVM将以256 MB的内存启动它,并将允许该进程使用最多2048 MB的内存:
java -Xms256m -Xmx2048m
也可以以不同的大小(例如千字节,兆字节等)指定内存标志。
-Xmx1024k-Xmx512m
-Xmx8g
该Xms标志没有默认值,Xmx
通常默认值为256 MB。这些标志的常见用法是遇到java.lang.OutOfMemoryError
。
使用这些设置时,请记住,这些设置用于JVM的堆,并且JVM可以/将使用的内存比分配给堆的大小更多。从Oracle文档中:
请注意,JVM使用的内存不仅仅是堆。例如,Java方法,线程堆栈和本机句柄与堆以及JVM内部数据结构分开分配在内存中。
以上是 Java-启动JVM时,-Xms和-Xmx参数是什么? 的全部内容, 来源链接: utcz.com/qa/430242.html