zoukankan      html  css  js  c++  java
  • 堆内存大小的配置

    设置

    • Java堆区用于存储java对象实例,堆的大小在jvm启动时就已经设定好了,可以通过 "-Xmx"和 "-Xms"来进行设置
      • -Xms 用于表示堆的起始内存,等价于 -XX:InitialHeapSize
        • -Xms 用来设置堆空间(年轻代+老年代)的初始内存大小
          • -X 是jvm的运行参数
          • ms 是memory start
      • -Xmx 用于设置堆的最大内存,等价于 -XX:MaxHeapSize
    • 一旦堆区中的内存大小超过 -Xmx所指定的最大内存时,将会抛出OOM异常
    • 通常会将-Xms和-Xmx两个参数配置相同的值,其目的就是为了能够在java垃圾回收机制清理完堆区后不需要重新分隔计算堆区的大小,从而提高性能
    • 默认情况下,初始内存大小:物理内存大小/64;最大内存大小:物理内存大小/4
      • 手动设置:-Xms600m -Xmx600m

    查看

    方式一: 终端输入jps, 然后jstat -gc 进程id

    方式二:(控制台打印)Edit Configurations  ->  VM Options 添加  -XX:+PrintGCDetails

    方式三:

     1 public class HeapSpaceInitial {
     2     public static void main(String[] args) {
     3 
     4         //返回Java虚拟机中的堆内存总量
     5         long initialMemory = Runtime.getRuntime().totalMemory() / 1024 / 1024;
     6         //返回Java虚拟机试图使用的最大堆内存量
     7         long maxMemory = Runtime.getRuntime().maxMemory() / 1024 / 1024;
     8 
     9         System.out.println("-Xms : " + initialMemory + "M");
    10         System.out.println("-Xmx : " + maxMemory + "M");
    11 12 }

    附:JVM学习目录

  • 相关阅读:
    C# 实现 JAVA AES加密解密(转他人)
    转 Java、C#双语版配套AES加解密示例
    开发工具资料
    WebApi返回Json格式
    【转】NuGet.org 无法访问的解决方法
    使用Senparc.Weixin.WxOpen开发高可用的微信小程序
    WebApi资料
    WinForm资料
    Winform开发框架之终极应用
    Winform开发中另一种样式的OutLookBar工具条
  • 原文地址:https://www.cnblogs.com/ding-dang/p/13073281.html
Copyright © 2011-2022 走看看