Java工作知识

GC

2019-07-03  本文已影响2人  谁家的猪

垃圾回收标记算法

对象被判定为垃圾的标准

判定对象是否为垃圾的算法

引用计数算法

判断对象的引用数量

优点:执行效率高,程序执行受影响较小

缺点:无法检测出循环引用的情况,导致内存泄漏

可达性分析算法

通过判断对象的引用链是否可达来决定对象是否可以被回收

可以作为GCRoot的对象

垃圾回收算法

谈谈你了解的垃圾回收算法

标记-清除算法

复制算法

标记-整理算法

避免内存的不连续、不用设置两块内存互换、适用于存活率高的场景

分代收集算法

GC的分类

年轻代:尽可能快速地收集掉那些生命周期短的对象

image.png

对象如何晋升到老年代

常用的调优参数

老年代:存放生命周期较长的对象

触发FullGC条件

新生代垃圾收集器

Stop-the-World

Safepoint

JVM的运行模式

垃圾收集器之间的联系

image.png

Serial收集器(-XX:+UseSerialGC,复制算法)

ParNew收集器(-XX:+UseParNewGC,复制算法)

Parallel Scavenge收集器(-XX:+UseParallelGC,复制算法)

老年代垃圾收集器

Serial Old收集器(-XX:+UseSerialOldGC,标记-整理算法)

Parallel Old收集器(-XX:+UseParallelOldGC,标记-整理算法)

CMS收集器(-XX:+UseConcMarkSweepGC,标记-清除算法)

G1收集器(-XX:+UseG1GC,复制+标记-整理算法)

Garbage First收集器的特点

GC相关面试题

Object的finalize()方法的作用是否与C++的析构函数作用相同

Java中的强引用,软引用,弱引用,虚引用有什么用

强引用

软引用

弱引用

虚引用

强引用>软引用>弱引用>虚引用

image.png

类层次结构

image.png

引用队列(ReferenceQueue)

上一篇 下一篇

猜你喜欢

热点阅读