AI
推荐
模板社区
专题
登录
免费注册
首页
思维导图
详情
Java知识点
2020-03-17 17:58:51
0
举报
分享方式
使用 (¥5)
Java中垃圾收集的一些概念
Java
GC
模板推荐
作者其他创作
大纲/内容
对象存活判断
引用计数
<b>判断对象引用数量,</b>新增加1,释放减1,为0回收
特点:简单、不能解决对象循环引用问题
可达性分析
判断对象的引用链是否可达
垃圾回收类型
Minor GC
对新生代回收
Full GC
对整个堆回收
垃圾回收算法
标记-清除法
优点:简单实现,容易理解
缺点:时间效率低、空间内存碎片多
复制法
优点:无碎片问题、实现简单、运行高效、适合新生代
缺点:内存缩小为原来的一半,持续复制长生存期的对象则导致效率降低。
标记-压缩法
优点:无碎片问题、无内存减半问题、适合老年代
缺点:不适合频繁更替、不适合新生代
分代收集法
优点:因代而异,不同代不同算法处理
新生代:复制法;老年代:标记-清除法或者标记-整理法
垃圾回收器
回收新生代的收集器
Serial
串行回收、古老、稳定、效率高
新生代:复制法;老年代:标记-压缩法
ParNew
新生代:并行;老年代:串行
新生代:复制法、老年代:标记-压缩法
<b>多线程执行</b>
Parallel Scavenge
与parNew类似,但是更注重吞吐量
回收老年代的收集器
Serial Old
Serial的老年代版本。串行,标记-压缩法
Parallel Old
Parallel的老年代版本。多线程、标记-压缩法
CMS
以获取最短回收停顿时间为目标的收集器
初始标记-并发标记-重新标记-并发清除
特点
优点:并发收集,低停顿
缺点:产生大量碎片,并发阶段降低吞吐量
回收整个Java堆的收集器
G1
特点
空间整合
采用标记-压缩法
可预测停顿
建立可预测停顿模型
内存分配与回收策略
对象优先放Eden区
当Eden区没有足够空间进行分配时,虚拟机将发起一次minor GC
大对象放老年区
比如长字符串、数组等
年龄长的对象移到老年区
minor GC超过默认次数(15)被认为年老对象
动态对象年龄判断<br>
相同年龄所有对象占一半多,以该年龄划分年老和年轻
by AthenaHe
收藏
立即使用
Java知识点
萤火
职业:硕士
去主页
Collect
Get Started
java知识点总结
Collect
Get Started
java知识点总结
Collect
Get Started
python知识点
Collect
Get Started
java知识点总结
评论
0
条评论
下一页
图形选择
思维导图
主题
补充说明
AI生成
修改AI描述
去编辑
重新生成
提示
关闭后当前内容将不会保存,是否继续?
取消
确定
Document