.NET中垃圾回收(GC)的具体工作流程是怎样的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2394个文字,预计阅读时间需要10分钟。
前言:在上述文中[如何获取GC的STW时间],我们聊到了如何通过监控GC发生的事件来计算STW时间。这里简单介绍了几种GC事件及其流程。
+ 小伙伴们问,那么+ GC事件是什么?
简单来说,GC事件是指垃圾回收器进行垃圾回收的操作。常见的GC事件包括:
1. Young GC:对新生代进行垃圾回收,包括Serial、ParNew、Parallel Scavenge等算法。
2.Full GC:对整个堆进行垃圾回收,包括Serial Old、Parallel Old等算法。
3.CMS GC:对老年代进行垃圾回收,旨在减少STW时间,包括CMS和CMS-Concurrent Mark Sweep等算法。
这些GC事件的流程大致如下:
1. Young GC:垃圾回收器先标记存活对象,然后进行复制或标记-整理,最后清理未被引用的对象。
2.Full GC:垃圾回收器先进行Young GC,然后对老年代进行标记-清除或标记-整理,最后进行压缩。
3.CMS GC:垃圾回收器先进行标记-清除,然后进行并发标记,最后进行并发清理。
前言在上文[如何获取GC的STW时间]一文中,我们聊到了如何通过监听GC发出的诊断事件来计算STW时间。里面只简单的介绍了几种GC事件和它的流程。
本文共计2394个文字,预计阅读时间需要10分钟。
前言:在上述文中[如何获取GC的STW时间],我们聊到了如何通过监控GC发生的事件来计算STW时间。这里简单介绍了几种GC事件及其流程。
+ 小伙伴们问,那么+ GC事件是什么?
简单来说,GC事件是指垃圾回收器进行垃圾回收的操作。常见的GC事件包括:
1. Young GC:对新生代进行垃圾回收,包括Serial、ParNew、Parallel Scavenge等算法。
2.Full GC:对整个堆进行垃圾回收,包括Serial Old、Parallel Old等算法。
3.CMS GC:对老年代进行垃圾回收,旨在减少STW时间,包括CMS和CMS-Concurrent Mark Sweep等算法。
这些GC事件的流程大致如下:
1. Young GC:垃圾回收器先标记存活对象,然后进行复制或标记-整理,最后清理未被引用的对象。
2.Full GC:垃圾回收器先进行Young GC,然后对老年代进行标记-清除或标记-整理,最后进行压缩。
3.CMS GC:垃圾回收器先进行标记-清除,然后进行并发标记,最后进行并发清理。
前言在上文[如何获取GC的STW时间]一文中,我们聊到了如何通过监听GC发出的诊断事件来计算STW时间。里面只简单的介绍了几种GC事件和它的流程。

