gpt4 book ai didi

reference-counting - 循环引用有哪些解决方案?

转载 作者:行者123 更新时间:2023-12-03 20:48:19 27 4
gpt4 key购买 nike

使用引用计数时,有哪些可能的解决方案/技术来处理循环引用?

最著名的解决方案是使用弱引用,但是许多关于该主题的文章暗示还有其他方法,但不断重复弱引用示例。这让我想知道,这些其他方法是什么?

  • 我不是在问什么是引用计数的替代方案,而是在使用引用计数时有什么解决循环引用的方法。
  • 这个问题不是关于任何特定的问题/实现/语言,而是一个普遍的问题。
  • 最佳答案

    多年来,我以十几种不同的方式看待这个问题,我发现每次都有效的唯一解决方案是重新构建我的解决方案以不使用循环引用。

    编辑:

    Can you expand? For example, how would you deal with a parent-child relation when the child needs to know about/access the parent?OB OB



    正如我所说,唯一好的解决方案是避免此类构造,除非您使用的运行时可以安全地处理它们。

    也就是说,如果您必须有一个树/父-子数据结构,其中子项知道父项,那么您将必须实现自己的、手动调用的拆卸序列(即,在您可能实现的任何析构函数的外部)开始在根(或要修剪的分支)处,并对树进行深度优先搜索以从叶子中删除引用。

    它变得复杂和繁琐,因此 IMO 唯一的解决方案是完全避免它。

    关于reference-counting - 循环引用有哪些解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1069330/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com