Java 8中的默认Xmxsize(最大堆大小)
在oracle文档中,我发现:
-Xmxsize以字节为单位指定内存分配池的最大大小(以字节为单位)…默认值是在运行时根据系统配置选择的。
这是什么 系统配置 是什么意思?
回答:
它取决于实现和版本,但通常取决于所使用的VM(例如,客户端或服务器,see -client
和-server
参数)以及您的系统内存。
client
默认值通常是物理内存的1/4或1GB(以较小者为准)。
Java配置选项(命令行参数)也可以“外包”给环境变量,包括-Xmx
,可以更改默认值(意味着指定新的默认值)。具体来说JAVA_TOOL_OPTIONS
,所有Java工具都会检查环境变量,并在环境变量存在时使用它(此处和此处提供更多详细信息)。
您可以运行以下命令以查看默认值:
java -XX:+PrintFlagsFinal -version
它为您提供了一个清单,-Xmx
位于中MaxHeapSize
,-Xms
位于中InitialHeapSize
。过滤您的输出(例如|grep
在Linux上)或将其保存在文件中,以便您可以在其中搜索。
以上是 Java 8中的默认Xmxsize(最大堆大小) 的全部内容, 来源链接: utcz.com/qa/435656.html