【问题标题】:Common data structures used in java Garbage Collection techniques [closed]java垃圾收集技术中使用的常见数据结构
【发布时间】:2019-08-24 10:55:08
【问题描述】:

我多次遇到以下问题:

垃圾回收中使用了哪些数据结构?

我没有找到很多关于 GC 算法中使用的数据结构的资源。

编辑:我知道这个问题似乎太宽泛了,因为有 不同种类的垃圾收集技术。我们可以选择 常用的垃圾收集算法,如在 最受欢迎的 JVM。

【问题讨论】:

标签: java data-structures garbage-collection garbage mark-and-sweep


【解决方案1】:

您的问题更像是在问“操作系统是如何工作的?” GC 有许多不同的算法,它们使用不同的内部数据结构,具体取决于算法的工作原理。

许多算法都使用根集作为起点。这是可从应用程序线程直接访问的所有对象的列表。它是通过扫描线程堆栈、寄存器、静态变量等来创建的。GC 通常会处理根集以跟随其他对象(因此是可访问的)的链接并构建所有可访问对象的图。

还有其他数据结构,例如卡片表,但并非所有算法都使用这些数据结构。

您可能想选择一种特定的 GC 算法并对其进行研究。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-13
    • 2011-02-25
    • 1970-01-01
    • 1970-01-01
    • 2011-11-07
    相关资源
    最近更新 更多