何时将在android中回收活动实例?

时间:2014-09-21 15:13:58

标签: android android-activity

调用Activity的onDestroy()之后,活动实例何时会被回收? 当Activity实例的引用计数为零时, 或者当系统需要一些内存时,或者什么时候需要?

2 个答案:

答案 0 :(得分:1)

  

活动实例何时回收?

在没有更多的引用并且垃圾收集器开始收集那些垃圾之后的某个时间收集它。请记住,Dalvik VM garabage收集器不会尝试收集每个GC通道上的所有垃圾,以尽量减少CPU影响。

答案 1 :(得分:1)

onDestroy()将释放它拥有的所有资源。

根据docs

  

活动将完成"全球"的所有设置在onCreate()中声明状态,并释放onDestroy()中的所有剩余资源。例如,如果它有一个在后台运行的线程从网络下载数据,它可以在onCreate()中创建该线程,然后在onDestroy()中停止该线程。

只有当Dalvik决定需要进行GC操作时才会进行活动。此外,对于要进行GC的活动,应删除所有它的实时参考。

如果要运行具有更高优先级的应用程序并且没有可用内存,Android操作系统将会终止该进程。