您的位置:首页 > 其它

【原创】如何判断对象已死?

2012-07-25 16:30 141 查看
如何判断对象是否可以被回收掉?对象已经没有价值了?对象已死?

1. 引用计数算法

给对象添加一个引用计数器,每当该对象被其它对象引用的时候,计数器就加1,当某一个引用失效的时候就减1,如果对象的引用计数器持续一段时间内都为0,该对象就可以被回收。

应用:COM、FlashPlayer、Python

2. 根搜索算法:

选一些特定的对象为“GC Roots”对象作为起点,从这个起点开始向下搜索,搜索走过的路径为一个引用链,当一个对象到 GC Roots 没有任何引用链的时候,该对象就可以被回收。

应用:Java,C#

引用计数法的缺点就是无法处理相互引用的对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: