JVM 选项 -XX:+UseCompressedOops 有什么作用? 为什么要使用?

当你将你的应用从 32 位的 JVM 迁移到 64 位的 JVM 时,由于对象的指针从 

32 位增加到了 64 位,因此堆内存会突然增加,差不多要翻倍。这也会对 CPU

缓存(容量比内存小很多)的数据产生不利的影响。因为,迁移到 64 位的 JVM

主要动机在于可以指定最大堆大小,通过压缩 OOP 可以节省一定的内存。通过 

-XX:+UseCompressedOops 选项,JVM 会使用 32 位的 OOP,而不是 64 位 

的 OOP。

posted @ 2020-07-06 08:38  咔啡  阅读(3971)  评论(0)    收藏  举报