Android中的手动垃圾收集是否必要?

时间:2011-03-24 07:04:30

标签: android garbage-collection

在Android平台上开发相当复杂的应用程序(例如访问文件,数据库,网络连接等外部资源)时,是否需要处理垃圾收集?或者我应该让Android一直照顾GC吗?

垃圾收集器是否还能让Android程序员摆脱释放内存的所有负担?

如果没有,那么任何人都可以用一个实际的例子解释为什么会这样呢?

1 个答案:

答案 0 :(得分:1)

一般来说,GC可以帮助程序员避免许多问题,但它并非万能药。作为使用GC系统的程序员,您在分配生命周期方面需要担心两件事:

  • 在不再需要对象时删除引用(例如,将变量设置为null)。如果不这样做可能会导致内存泄漏。

  • 显式管理非内存资源,例如打开的文件。代表这些东西的对象通常会安排在对象获得GC时释放资源,但作为程序员,您可以更好地了解资源何时真正不需要。因此,(在)不再需要的情况下,明确调用InputStream上的close()而不是让GC清理它很符合你的最佳利益。