垃圾回收算法
Q: Java的垃圾回收器(GC)都有哪些算法?
Java GC(垃圾收集器)的几种算法包括:
- 标记-清除(Mark-Sweep)算法:先标记需要回收的对象,然后进行清除。
- 复制-清除(Copying)算法:将内存分为两个区域,每次只使用其中一个区域。当这个区域满时,就将存活的对象复制到另一个区域,然后清除完全被使用过的区域。
- 标记-压缩(Mark-Compact)算法:结合了“标记-清除”和“复制-清除”算法的特点,先标记需要回收的对象,然后清除需要回收的对象,再将存活对象进行压缩整理以便清楚内存碎片。
- 分代收集(Generational Collection)算法:根据对象的存活周期将内存分为几个区域,如新生代和老年代,然后针对不同区域采用最适合的收集算法。
Q:JVM中使用的是哪种算法
Java的HotSpot虚拟机中,用的是分代收集算法。新生代通常采用复制算法,老年代通常采用“标记-压缩”或“标记-清除”算法。
JVM参数
本博客文章除特别声明外,均可自由转载与引用,转载请标注原文出处:http://www.yelbee.top/index.php/archives/227/