10

我是否应该在 onDestroy(或 onDetach)方法中明确地将片段的所有变量设置为 null 以避免内存泄漏?或者没有必要,当片段被“销毁”时它们将被GCed。最佳实践是什么?提前致谢!

4

2 回答 2

10

只需加分,

  1. 如果您的代码中有任何服务正在运行,请停止它。
  2. 如果您已注册到任何广播或任何其他听众,请取消注册
  3. 如果您打开了任何游标,请关闭它们。
  4. 如果您有任何位图,请回收它们。
于 2013-09-19T23:28:44.103 回答
7

你不需要担心这个。GC 会处理它。在 Java 中,您几乎必须尝试发生内存泄漏(是的,有可能,但非常罕见)。所以,不要担心。如果您确实将变量设置为,null您最终只会在不需要的代码上浪费时间,并且会增加维护工作。Java 中的 GC 在销毁未引用的变量和对象方面做得很好。

于 2013-09-19T20:07:31.903 回答