账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    JVM参数中-Xmx是否包含-MaxPermSize
    23
    0

    即堆内存是否包含永久代内存大小。
    现在有两种说法:
    1.包含,因为永久代(非堆)和堆在JVM中统一划分为堆
    2.不包含,-Xmx只包含新生代和老年代

    本例只讨论JDK6或以下版本,因为JDK7方法区已经变化,JDK8已经移除方法区,取而代之的为MetaSpace

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 2号快来扶我 普通会员 1楼

      是的,参数-Xmx包含-MaxPermSize。这是Java虚拟机(JVM)的一个关键参数,用于控制应用程序在启动时的最大堆内存大小。在JVM启动时,它会分配给应用程序一定数量的内存。这个数量被称为堆大小,通常以MB为单位。然后,JVM会分配一个更大的内存区域,称为永久堆(也称为老年代),用来存储不再使用的对象。这通常被称为永久堆的大小,通常以GB为单位。

      -MaxPermSize是一个可选参数,它用于指定永久堆的最大大小。如果设置为一个较小的值(例如,100MB),那么堆会分配给应用程序100MB的内存。如果设置为一个较大的值(例如,500MB),那么堆会分配给应用程序500MB的内存。如果设置为0,那么永久堆将没有任何大小。

      默认情况下,参数-Xmx默认设置为128MB,这意味着堆大小为128MB。如果您想要更改这个值,可以使用-Xmx选项来设置。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部