java虚拟机内存管理机制(三):我主管写的一些jvm内存管理知识
补习了一下jvm的内存管理知识,有以下心得分享: 1、jvm的内存分区分级大粒度管理相较memcache的固定单元小粒度内存管理,拥有更高的内存利用率,但带来内存碎片的问题。 2、为了解决内存碎片问题,jvm采取了碎片整理的方式,但碎片整理是很耗时的。3、为了提高碎片整理的效率,因此引入了周期性的GC,而且分区分级的方式也控制了每次GC和碎片整理的范围。 4、由于jvm使用堆内存来存储局部变量,而
补习了一下jvm的内存管理知识,有以下心得分享:
1、jvm的内存分区分级大粒度管理相较memcache的固定单元小粒度内存管理,拥有更高的内存利用率,但带来内存碎片的问题。
2、为了解决内存碎片问题,jvm采取了碎片整理的方式,但碎片整理是很耗时的。
3、为了提高碎片整理的效率,因此引入了周期性的GC,而且分区分级的方式也控制了每次GC和碎片整理的范围。
4、由于jvm使用堆内存来存储局部变量,而局部变量具有生存周期短,先申请的后释放的特点,因此在低级别的分区中进行GC是效率最高的方式。 感觉环环相扣,有点奇妙。
再补充GC的一个作用:寻找回路的孤立存储,并释放其占用的空间。这更要求GC的非实时、周期性
同系列文章:
java虚拟机内存管理机制(一):http://blog.csdn.net/lengyuhong/archive/2010/10/20/5953544.aspx
java虚拟机内存管理机制(二):http://blog.csdn.net/lengyuhong/archive/2010/10/20/5953594.aspx
java虚拟机内存管理机制(三):http://blog.csdn.net/lengyuhong/archive/2010/10/19/5952008.aspx
更多推荐
所有评论(0)