Java之旅
          Record my Java-learning progress.
          posts - 1,comments - 17,trackbacks - 0

          PermGen space的全稱是Permanent Generation space,是指內存的永久保存區(qū)域OutOfMemoryError: PermGen space從表面上看就是內存益出,解決方法也一定是加大內存。說說為什么會內存益出:這一部分用于存放Class和Meta的信息,Class在被 Load的時候被放入PermGen space區(qū)域,它和和存放Instance的Heap區(qū)域不同,GC(Garbage Collection)不會在主程序運行期對PermGen space進行清理,所以如果你的APP會LOAD很多CLASS的話,就很可能出現(xiàn)PermGen space錯誤。這種錯誤常見在web服務器對JSP進行pre compile的時候。

          改正方法,在 run.bat 中加入:-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

          因為項目中引用了很多的 jar 包,而這些 jar 包中的 class 信息會被 JBoss 的 class loader 加載到 PermGen space 區(qū)域,在 JVM 默認的情況下,該部分空間的大小只有 4M,在 jar 包非常多的情況下,顯然是不夠用的,所以通過 -XX:MaxPermSize=256m 指定最大值后即可解決問題。

          另外,如果 heap 內存不足出現(xiàn) java.lang.OutOfMemoryError: Java heap space 時,可以通過 -Xmx512m 指定最大 heap 內存來解決這樣的問題。

          posted on 2011-07-22 11:47 胡昆栄 閱讀(179) 評論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 双柏县| 资兴市| 荥经县| 本溪市| 芦山县| 分宜县| 高陵县| 辉县市| 民乐县| 朝阳市| 扬州市| 理塘县| 美姑县| 玉龙| 台北县| 正宁县| 井研县| 什邡市| 即墨市| 旌德县| 葫芦岛市| 香河县| 比如县| 十堰市| 鞍山市| 澳门| 灵宝市| 南江县| 肇东市| 太谷县| 滨州市| 隆子县| 视频| 汶上县| 称多县| 冀州市| 溧阳市| 固始县| 赤壁市| 浦北县| 忻城县|