请教下JVM中Heap memory和Non-heap memory是什么意思,举例说明下

javame 发布于 2014/10/23 16:49
阅读 2K+
收藏 0
加载中
1
dreamers
dreamers
堆内存和非堆内存。除了 Perm代(非堆内存),其他的内存块都是堆内存。

不过Java 8及之后的版本,将 Perm 改为了 Metaspace,它是可以被垃圾收集器收集的(Perm也可能会被垃圾收集器收集的,通过虚拟机参数:-XX:+CMSClassUnloadingEnabled并且是用Navtive 内存的,对 Perm的虚拟机参数,它会忽略。

简单点说:就是虚拟机常驻内存就是非堆内存(如Perm,它是保存class信息,常量池之类)。否则就是堆内存。

0
sxgkwei
sxgkwei
堆内存爆掉和非堆内存爆掉的意思啊。你启动jvm的时候,其实是有启动参数的,一般都会设置出堆和非堆内存的最大值,然后,你加载的数据太多什么的,就会导致内存中放不下,就悲剧了啊。
返回顶部
顶部