我执行以下命令:
java -Xms1024M -Xmx1024M mypackage.MyClass
我期望 JVM 立即捕获资源,但实际上我的资源管理器显示 JVM 捕获了 7.2M。
有谁知道是什么原因吗?
PS: 文档 (man java) 关于该选项的说明如下:-Xmsn
指定内存分配的初始大小(以字节为单位) 水池。该值必须是大于 1MB 的 1024 的倍数。 附加字母 k 或 K 来表示千字节,或附加 m 或 M 来表示 表示兆字节。默认值是在运行时选择的 根据系统配置。有关更多信息,请参阅 热点人体工程学 示例:
-Xms6291456
-Xms6144k
-Xms6m
编辑:
java -version
返回:
java version "1.6.0_18"
OpenJDK Runtime Environment (IcedTea6 1.8.1) (6b18-1.8.1-0ubuntu1~9.10.1)
OpenJDK Server VM (build 16.0-b13, mixed mode)
操作系统:9.10 - Karmic Koala
最佳答案
请注意,文档并未说明“G”是允许的后缀。尝试使用 1024M 而不是 1G。
关于Java:选项 -Xms 未立即应用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3876257/