0%

元空间

文章字数:531,阅读全文大约需要2分钟

解释

  1. 元空间是jdk1.8之后出现的,之前叫永久代
  2. 元空间就是方法区,方法区是JVM的规范,元空间是HotSpot的具体实现
  3. 元空间存放着类的信息、方法数据、方法代码、常量池等
  4. 编译的时候代码里的字符串就会被编译成对象,然后被堆里的引用对象引用。

相关参数

  • XX:MetaspaceSize 初始空间大小,达到该值就会触发垃圾收集进行类型卸载,同时GC会对该值进行调整:如果释放了大量的空间,就适当降低该值;如果释放了很少的空间,那么在不超过MaxMetaspaceSize时,适当提高该值。
  • XX:MaxMetaspaceSize最大空间,默认是没有限制的。

除了上面两个指定大小的选项以外,还有两个与 GC 相关的属性:

  • XX:MinMetaspaceFreeRatioGC之后,最小的Metaspace剩余空间容量的百分比,减少为分配空间所导致的垃圾收集
  • XX:MaxMetaspaceFreeRatioGC之后,最大的Metaspace剩余空间容量的百分比,减少为释放空间所导致的垃圾收集