相关疑难解决方法(0)

java -Xmx1G是指10 ^ 9还是2 ^ 30个字节?

而在一般情况,是用于单位-Xmx,-Xms-Xmn选项("K","M"和"G",或不太标准的可能性"K","m"或"G")的二进制前缀倍数(即,功率1024),还是1000的力量?

手册说它们代表千字节(kB),兆字节(MB)和千兆字节(GB),表明它们是原始SI系统中定义的1000的幂.我的非正式测试(我不是很自信)表明他们真的是kibibytes(kiB),mebibytes(MiB)gibibytes(GiB),所有权力都是1024.

哪个是对的?例如,什么Java代码会显示当前大小?

使用1024的倍数对于RAM大小来说并不奇怪,因为RAM通常通过加倍硬件模块来物理布局.但是,随着我们获得越来越大的权力,以明确和标准的方式使用单位变得越来越重要,因为混乱的可能性会增加.单位"t"也被我的JVM接受,1 TiB比1 TB大10%.

注意:如果这些确实是二进制倍数,我建议更新文档和用户界面以非常清楚,例如" 附加字母k或K表示kibibytes(1024字节)"或m或M表示mebibytes( 1048576字节) ".这就是采用的方法,例如在Ubuntu:UnitsPolicy - Ubuntu Wiki中.

注意:有关选项用途的更多信息,请参阅例如java - 启动JVM时Xms和Xmx参数是什么?.

java units-of-measurement

15
推荐指数
2
解决办法
7957
查看次数

标签 统计

java ×1

units-of-measurement ×1