JVM性能调优-⼤对象的分配和基本分配⼀样吗

  • 2019 年 12 月 20 日
  • 笔记

简介:堆内存JVM参数讲解,⼤对象分配原则讲解和代码验证
是什么
  • 所谓的⼤对象是指,需要⼤量连续内存空间的 Java 对象,最典型的⼤对象就是那种很⻓的字符串以及数组
  • 虚拟机提供了⼀个-XX: PretenureSizeThreshold 参数,令⼤于这个设置值的对象直接在⽼年代分配。这样做的⽬的是避免在 Eden 区及两个 Survivor 区之间发⽣⼤量的内存复制
实战代码演练⼤对象配置
  • -verbose:gc -XX:+PrintGCDetails 开启GC⽇志打印
  • -Xms20 M 设置JVM初始内存为20M
  • -Xmx20 M 设置JVM最⼤内存为20M
  • -Xmn10 M 设置年轻代内存⼤⼩为10M