CompressedClassSpaceSize区域是否包含MaxMetaspaceSize区域? [英] Is CompressedClassSpaceSize area contains MaxMetaspaceSize area?

查看:933
本文介绍了CompressedClassSpaceSize区域是否包含MaxMetaspaceSize区域?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

什么是CompressedClassSpaceSize?

CompressedClassSpaceSizeMetaspaceSize之间是什么关系?

推荐答案

元空间是用于存储类元数据的内存区域-在解析.class文件时创建的内部JVM结构.

Metaspace is the memory area for storing class metadata - internal JVM structures created while parsing .class files.

类元数据包括:

  • Java类的内部表示形式
  • 带有字节码的方法
  • 字段描述符
  • 恒定池
  • 符号
  • 注释

-XX:MaxMetaspaceSize默认情况下是无限的.

-XX:MaxMetaspaceSize is unlimited by default.

-XX:+UseCompressedClassPointers选项为ON(堆<32G的默认设置)时,类将从Metaspace移到名为 Compressed Class Space 的单独区域.这是为了使用32位值而不是64位来寻址VM类结构.

When -XX:+UseCompressedClassPointers option is ON (default for heaps < 32G), classes are moved from Metaspace to the separate area called Compressed Class Space. This is to allow addressing VM class structures with 32-bit values instead of 64-bit.

因此,压缩类空间包含Java类的内部表示形式,而元空间则包含所有其余的元数据:方法,常量池,注释等.

So, Compressed Class Space contains internal representation of Java classes, while Metaspace holds all the rest metadata: methods, constant pools, annotations, etc.

压缩类空间的大小受-XX:CompressedClassSpaceSize限制,默认情况下为1G. -XX:CompressedClassSpaceSize的最大可能值为3G.

The size of Compressed Class Space is limited by -XX:CompressedClassSpaceSize, which is 1G by default. The maximum possible value of -XX:CompressedClassSpaceSize is 3G.

非类元空间和压缩类空间是两个不相交的区域. MaxMetaspaceSize限制了两个区域的承诺大小:

Non-class Metaspace and Compressed Class Space are two disjoint areas. MaxMetaspaceSize limits the committed size of both areas:

committed(Non-class Metaspace) + committed(Compressed Class Space) <= MaxMetaspaceSize

如果将MaxMetaspaceSize设置为小于CompressedClassSpaceSize,则后者会自动减小为

If MaxMetaspaceSize is set smaller than CompressedClassSpaceSize, the latter is automatically decreased to

CompressedClassSpaceSize = MaxMetaspaceSize - 2*InitialBootClassLoaderMetaspaceSize

这篇关于CompressedClassSpaceSize区域是否包含MaxMetaspaceSize区域?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆