垃圾收集器与内存分配

2018-08-14  本文已影响0人  Infinity233

第一次使用思维导图做笔记,在看过一次的基础上花了一早上和一下午的时间完成。感觉问题很大…………
下面是XMind自动到处的MarkDown文本。

垃圾收集器与内存分配

1.概述

GC的历史比Java更久,1960年诞生的Lisp是滴一门真正使用内存动态分配和垃圾收集技术的语言。

当Lisp还在胚胎时期时,人们就在思考GC需要完成的3件事情。

为什么要了解已经进入“自动化”时代的GC和内存分配?

哪些内存区域需要回收

2.对象已死吗?

概述

非主流:引用计数算法(Reference Counting)

主流:可达性分析算法(Reachability Analysis)

再谈引用

生存还是死亡

回收方法区(HotSpot中的永生带)

3.垃圾收集算法

标记 - 清除算法

复制算法

标记 - 整理算法

分代收集算法

4.HptSpot的算法实现

枚举根节点

安全点

安全区域

5.垃圾收集器

Serial收集器

ParNew收集器

Parallel Scavenge收集器

Serial Old收集器

Parallel Old收集器

CMS收集器

G1收集器

名词解释

理解GC日志

垃圾收集器参数总结

6.内存分配与回收策略

对象优先在Eden分配

大对象直接进入老年代

长期存活的对象将进入老年代

动态对象年龄判断

空间分配担保

上一篇 下一篇

猜你喜欢

热点阅读