在onDestroy / onStop中将引用(例如位图)归零是否会使GC的清理速度有所不同?
答案 0 :(得分:1)
总之。否。
如果在已经无法访问的对象中清空字段,GC将不会更快。
例如,假设您有一个包含大量内部引用的大型数据结构,并且只有一个引用保存在数据结构之外。当外部引用消失时,整个数据结构变得无法访问。取消内部引用将无效。
归零的唯一可能好处是:
在某些情况下 - 将字段置零可以使相应的引用对象更快到达。使用上面的例子,如果有多个外部引用,可能会发生这种情况,其中一些是"隐藏"在长期存在的数据结构中。
如果可到达的对象较少,GC通常会运行得更快。因此,使对象更快无法访问的步骤将减少GC开销。
将引用归零(例如对位图)... Android位图是/包含需要小心处理的非堆资源。本Q& A解释说:
请注意,解决方案不仅仅是“#34; null"位图参考。这通常没有效果。