开发语言如何解决循环引用问题?

开发语言如何解决循环引用问题?,第1张

注意
  1. 这是不是站在使用开发语言的角度,而是站在开发开发语言的角度。
  2. 这是解决引用计数类内存管理的开发语言的循环引用问题,不是gc类的。
  3. 能解决但不一定会被采用,因为有得就有失。
思路

把引用计数改成引用线程链表,线程内变量的最大的作用域结束时可以释放变量,若变量不存在其他引用的线程则可以直接释放,否则就由其他线程释放。

缺点

内存使用增加,释放的时候存在并发需要使用锁,创建线程的时候需要把变量的所有子对象的引用线程更新一下。

结果

只要禁止循环引用,那么还是使用引用计数的内存管理会更好,简单直接、快速高效。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/919742.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存