存档

2017年2月 的存档

Java GC之常见垃圾收集器

2017年2月26日 没有评论

上一篇文章简单写了JVM的常见垃圾回收算法,今天就让我们看看根据这些算法有哪些常见的垃圾收集器,他们有什么特点,然后根据自己的应用特点和要求组合出各个年代所使用的收集器。

gccollect

上图展示了JDK1.7Update14之后的HotSpot虚拟机的7种作用于不同分代的收集器,如果两个收集器之间存[……]

Read more

分类: Java 标签: , ,

Java GC之垃圾回收算法

2017年2月19日 没有评论

上一篇文章简单写了一下JVM如何判断一个对象是否已经死了,当判断出一个对象已经死了之后,接下来就要进行垃圾回收了,所以在进行垃圾回收之前,先让我们看看垃圾回收的算法有哪些。

1. 标记-清除算法

标记清除见名知意该算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完[……]

Read more

分类: Java 标签: ,

Java GC之对象已死吗

2017年2月11日 没有评论

差不多两年以前曾经写过一篇文章:JAVA 性能调优,其实在那篇文章中只是简单的说了,对象的分布。这篇文章继续对分布于堆中的对象的生命周期进行说明,也就是确定堆中的这些对象哪些还是“活着”的,哪些是已经“死去”(即不可能再被任何途径使用的对象)的。

1. 引用计数算法

有很多人认为判断对象[……]

Read more

分类: Java 标签: ,