fbpx
维基百科

追踪垃圾回收

在计算机编程中,跟踪垃圾收集(英語: Tracing garbage collection )是一种自动内存管理的算法,该算法通过分析某些“根”对象的引用关系,来确定需要保留的可访问对象,并释放其余的不可访问对象的内存空间。该算法在实际的软件工程中得到了广泛的应用。[1][2]

跟踪垃圾收集是最常见的垃圾收集方式,以至于“垃圾收集”通常是指跟踪垃圾收集,而不是引用计数之类的其他方法[原創研究?]

对象的可达性 编辑

简单地说,如果可以从任何一个已经定义的变量开始,直接或者通过其他对象的引用来访问到某个对象,则该对象是可访问的。[原創研究?]更准确地说,只有以下两种对象是可达的:

  • 程序代码直接定义的变量与对象都是可达的。通常这些对象包括从调用堆栈中任何位置引用的所有对象(即当前正在调用的函数中的所有局部变量和参数)以及任何全局变量[原創研究?]
  • 可访问对象引用的任何对象都是可达的。[2]也就是说,可达性是传递闭包的。

强引用和弱引用 编辑

弱集合 编辑

基本算法 编辑

朴素的标记和扫描 编辑

标记-移动算法 编辑

參考連結 编辑

  1. ^ . Java Platform, Standard Edition HotSpot Virtual Machine Garbage Collection Tuning Guide. Oracle Java Documentation. [2020-03-12]. (原始内容存档于2021-01-18) (英语). The CMS collector ... is a tracing collector that identifies at least all the reachable objects in the heap. 
  2. ^ 2.0 2.1 吴, 昊; 季, 振洲. . 哈尔滨工业大学学报. 2011, 43 (11): 60–64 [2020-03-27]. ISSN 0367-6234. (原始内容存档于2020-05-28). 

追踪垃圾回收, 本條目存在以下問題, 請協助改善本條目或在討論頁針對議題發表看法, 此條目包含過多行話或專業術語, 可能需要簡化或提出進一步解釋, 2020年3月11日, 請在討論頁中發表對於本議題的看法, 並移除或解釋本條目中的行話, 此條目可能包含原创研究, 请协助補充参考资料, 添加相关内联标签和删除原创研究内容以改善这篇条目, 详细情况请参见讨论页, 此條目需要补充更多来源, 2020年3月12日, 请协助補充多方面可靠来源以改善这篇条目, 无法查证的内容可能會因為异议提出而被移除, 致使用者, 请搜索一下. 本條目存在以下問題 請協助改善本條目或在討論頁針對議題發表看法 此條目包含過多行話或專業術語 可能需要簡化或提出進一步解釋 2020年3月11日 請在討論頁中發表對於本議題的看法 並移除或解釋本條目中的行話 此條目可能包含原创研究 请协助補充参考资料 添加相关内联标签和删除原创研究内容以改善这篇条目 详细情况请参见讨论页 此條目需要补充更多来源 2020年3月12日 请协助補充多方面可靠来源以改善这篇条目 无法查证的内容可能會因為异议提出而被移除 致使用者 请搜索一下条目的标题 来源搜索 追踪垃圾回收 网页 新闻 书籍 学术 图像 以检查网络上是否存在该主题的更多可靠来源 判定指引 此條目不完整 請幫忙改善本條目 或到討論頁去討論该條目的問題 此條目需要精通或熟悉计算机科学的编者参与及协助编辑 請邀請適合的人士改善本条目 更多的細節與詳情請參见討論頁 另見其他需要计算机科学專家關注的頁面 在计算机编程中 跟踪垃圾收集 英語 Tracing garbage collection 是一种自动内存管理的算法 该算法通过分析某些 根 对象的引用关系 来确定需要保留的可访问对象 并释放其余的不可访问对象的内存空间 该算法在实际的软件工程中得到了广泛的应用 1 2 跟踪垃圾收集是最常见的垃圾收集方式 以至于 垃圾收集 通常是指跟踪垃圾收集 而不是引用计数之类的其他方法 原創研究 目录 1 对象的可达性 2 强引用和弱引用 3 弱集合 4 基本算法 4 1 朴素的标记和扫描 4 2 标记 移动算法 5 參考連結对象的可达性 编辑简单地说 如果可以从任何一个已经定义的变量开始 直接或者通过其他对象的引用来访问到某个对象 则该对象是可访问的 原創研究 更准确地说 只有以下两种对象是可达的 程序代码直接定义的变量与对象都是可达的 通常这些对象包括从调用堆栈中任何位置引用的所有对象 即当前正在调用的函数中的所有局部变量和参数 以及任何全局变量 原創研究 可访问对象引用的任何对象都是可达的 2 也就是说 可达性是传递闭包的 强引用和弱引用 编辑主条目 弱引用弱集合 编辑基本算法 编辑参见 垃圾回收 计算机科学 朴素的标记和扫描 编辑 标记 移动算法 编辑參考連結 编辑 Concurrent Mark Sweep CMS Collector Java Platform Standard Edition HotSpot Virtual Machine Garbage Collection Tuning Guide Oracle Java Documentation 2020 03 12 原始内容存档于2021 01 18 英语 The CMS collector is a tracing collector that identifies at least all the reachable objects in the heap 2 0 2 1 吴 昊 季 振洲 一种基于半空间的不完全拷贝垃圾回收机制 哈尔滨工业大学学报 2011 43 11 60 64 2020 03 27 ISSN 0367 6234 原始内容存档于2020 05 28 取自 https zh wikipedia org w index php title 追踪垃圾回收 amp oldid 72889371, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。