当没有调用onDestroy()时,本机资源是否会泄漏?

时间:2016-02-26 05:51:38

标签: android memory-leaks resource-leak

Activity#onDestroy()的文档说:

  

在某些情况下,系统会在不调用此方法(或其他任何方法)的情况下简单地终止活动的托管过程,因此不应该将其用于执行过程消失后要保留的内容。< / p>

如果进程被终止,活动持有的所有本机资源是否会被释放?或者是否有某些类型的本机资源可能会被框架泄露而导致流程崩溃?

编辑: This answer解决内存泄漏问题。我也不关心临时文件留在磁盘上的问题。我主要担心泄漏文件描述符。 (以及可能潜伏的未知未知数......)

1 个答案:

答案 0 :(得分:0)

如果该过程被杀死,则该过程中不会泄露任何内容。

这个文档存在的时候有人可能有想法在一个工作中启动一个线程并期望这个工作无限期地继续下去。这是对活动的错误使用。相反,&#34;粘性&#34;应该使用在被Android杀死时重新启动的服务,以便它可以在它被杀死时从它停止的地方继续。