7.JVM GC时的内存管理工作流程和频繁GC的原因

原创 2016年05月31日 14:28:38

大部分创建的对象都是在使用后结束,但是有的会存在很久。所以考虑gc的时候会考虑生命周期短,生命周期长,大对象,小对象。

生命周期短或者小对象此时可能就需要频繁的gc,把对象从内存释放掉。如果对象比较大,或者生命周期长就不需要gc,因为这种对象一般在old,如果heap过小此时就会被迫对old区域进行gc,从而导致full gc,此种情况下对性能的影响极大。所以一般会尽可能大的设置较大的heap。


gc的流程:

gc时会扫描young,from,to把不用的对象释放掉,同时把使用中的对象放到to中,此时如果对象大或者from和to的空间满时直接放到old中。young中的对象转移采用复制的方式,优点在于不会产生碎片用空间换取时间。

JVM内存管理------GC算法精解(分代搜集算法)

引言            何为终极算法?          其实就是现在的JVM采用的算法,并非真正的终极。说不定若干年以后,还会有新的终极算法,而且几乎是一定会有,因为LZ相信高...

JVM内存管理------GC算法简介

refer to http://www.cnblogs.com/zuoxiaolong/p/jvm3.html 根搜索算法(现代垃圾搜集算法的基础,都是基于它做的 :标记-清除算法、复制算法、标...
  • G7N3F
  • G7N3F
  • 2015年12月24日 11:27
  • 261

现代JVM内存管理方法及GC的实现和主要思路

谨以此文纪念已经辞世的C语言之父,Dennis Ritchie。无论世事如何变迁,无论日月如何更替,您的光辉成就都照耀着现代计算机技术发展之路。提到现代JVM内存管理,就不能不提到一个意义深远的东西,...
  • uk8692
  • uk8692
  • 2016年02月16日 16:52
  • 439

jvm内存管理与gc

参考:http://blog.csdn.net/suifeng3051/article/details/48292193 一、内存划分 1. 方法区 2. 堆区 3. 本地方法栈 4. 虚拟...

JVM内存管理------GC算法精解(复制算法与标记/整理算法)

本次LZ和各位分享GC最后两种算法,复制算法以及标记/整理算法。上一章在讲解标记/清除算法时已经提到过,这两种算法都是在此基础上演化而来的,究竟这两种算法优化了之前标记/清除算法的哪些问题呢?   ...

JVM内存管理------GC算法精解(五分钟让你彻底明白标记/清除算法)

相信不少猿友看到标题就认为LZ是标题党了,不过既然您已经被LZ忽悠进来了,那就好好的享受一顿算法大餐吧。不过LZ丑话说前面哦,这篇文章应该能让各位彻底理解标记/清除算法,不过倘若各位猿友不能在五分钟内...

JVM内存管理------GC算法精解(五分钟教你终极算法---分代搜集算法)

引言            何为终极算法?          其实就是现在的JVM采用的算法,并非真正的终极。说不定若干年以后,还会有新的终极算法,而且几乎是一定会有,因为LZ相信高人们的能力。...

现代JVM内存管理方法及GC的实现和主要思路

现代JVM内存管理方法及GC的实现和主要思路

JVM学习03-内存管理和垃圾回收04(之GC算法 垃圾收集器)

转载自:http://www.cnblogs.com/ityouknow/p/5614961.html 概述 垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 M...

JVM内存管理垃圾收集器GC

JVM内存管理垃圾收集器GC目录用 [TOC]来生成目录:JVM内存管理垃圾收集器GC目录 概述 垃圾回收算法 垃圾收集器   内存分配策略 参考概述  说起垃圾收集(Garbage Collecti...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:7.JVM GC时的内存管理工作流程和频繁GC的原因
举报原因:
原因补充:

(最多只允许输入30个字)