zoukankan      html  css  js  c++  java
  • java.lang.OutOfMemoryError: PermGen space PermGen space & java.lang.OutOfMemoryError: Java heap space Heap siz

    java.lang.OutOfMemoryError: PermGen space PermGen space  

      由-XX:PermSize  -XX:MaxPermSize 引起

    java.lang.OutOfMemoryError: Java heap space Heap siz

      由-Xms -Xmx 引起

    Liunx下修改:catalina.sh

      # OS specific support.  $var _must_ be set to either true or false.

      JAVA_OPTS="-server -Xms256m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=2048m"

    Windows下修改:catalina.bat

       set JAVA_OPTS=%JAVA_OPTS% -server -Xms256m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=2048m 

       echo Using CATALINA_BASE:   "%CATALINA_BASE%"

    -Xms:初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些。表示JVM Heap(堆内存)最小尺寸
    -Xmx:java heap最大值,使用的最大内存。表示JVM Heap(堆内存)最大允许的尺寸

    上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半。
    -XX:PermSize:设定内存的永久保存区域
    -XX:MaxPermSize:设定最大内存的永久保存区域

    PermSize和MaxPermSize指明虚拟机为java永久生成对象(Permanate generation)如,class对象、方法对象这些可反射(reflective)对象分配内存限制,这些内存不包括在Heap(堆内存)区之中。

    MaxPermSize缺省值和-server -client选项相关。
    -server选项下默认MaxPermSize为64m
    -client选项下默认MaxPermSize为32m

  • 相关阅读:
    gorm 更新数据时,0值会被忽略
    xshell评估过期解决办法
    安装zoom
    aria2 加速百度网盘下载
    ubuntu17.10 安装firefox的flash
    c++ 回调函数使用
    ubuntu17 安装中文输入法
    ubuntu python3.6 找不到_sqlite3
    linux 获取CPU个数
    centos7 yum与Python3冲突
  • 原文地址:https://www.cnblogs.com/yangy608/p/4273432.html
Copyright © 2011-2022 走看看