Perm Gen(持久代)中Code Cache(代码缓冲区)是HotSpotJava虚拟机用于编译和保存本地代码的内存.
当代码缓冲区用尽时会报如下相应的错误:
"CompilerThread0" java.lang.OutOfMemoryError: requested 2854248 bytes for Chunk::new. Out of swap space?
可以通过设置ReservedCodeCacheSize和CodeCacheMinimumFreeSpace参数来规避。
CodeCacheMinimumFreeSpace设置当code cache剩余空间小于该值时java停止编译解释,进而停止对code cache的进一步使用,
虽然会影响系统性能但不至于使系统崩溃。
另外一种可以确定系统code cache合理值得方式是通过java profiler工具确认non-heap(非堆)空间和Perm Gen(持久代)大小,
相减得到code cache的值。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23937368/viewspace-1057463/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23937368/viewspace-1057463/