PermGen space的全稱是Permanent Generation space,是指內存的永久保存區域。OutOfMemoryError: PermGen ;?這一區域用于存放Class和Meta的信息。
產生原因:
Class在被加載的時候被放入PermGen space區域,它和和存放Instance的Heap區域不同,GC(Garbage Collection)不會在主程序運行期對PermGen space進行清理,所以如果應用會加載很多class的話,就很可能出現PermGen space錯誤。
這種錯誤常見在web服務器對JSP進行pre compile的時候。
解決方法:就是加大將PermGen space區域的內存,也就是把MaxPermSize的大小調大如下:
-Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m;
如果是tomcat報這個錯:
~~~
在# OS specific support. $var _must_ be set to either true or false.上面加入以下行:
JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128M";
~~~
- 前言
- spring事務(Transaction )報 marked as rollback-only異常的原因及解決方法
- 自己整理的編碼規范總結。(個人覺得很受用)
- spring事務常見問題、異常分析和解決方法
- 剖析OutOfMemoryError: PermGen space產生原因及解決方法
- 剖析java.lang.OutOfMemoryError: Java heap space產生原因及解決方法
- java中不同的ORM框架實現對數據庫批量插入數據庫的方式與技巧
- 解決java讀取大文件內存溢出問題、如何在不重復讀取與不耗盡內存的情況下處理大文件
- 不得不看的Java代碼性能優化總結
- 實現使用3des在頁面js加密,后臺java解密
- Java日志記錄的5條規則