在Android上,每个进程或系统范围内完成垃圾收集?

时间:2011-07-17 03:50:22

标签: java android garbage-collection

在日志中,当您看到如下内容时:

DEBUG/dalvikvm(####): GC freed 5052 objects / 577400 bytes in 54ms

这是否意味着它释放了我的应用程序自己创建的5052个对象,或者这些5052个对象中的一些是否是在后台运行的其他应用程序创建的对象?

2 个答案:

答案 0 :(得分:2)

在Android上,每个应用程序都在自己的进程中运行,每个进程都在自己的虚拟机(VM)中运行。您查看的GC特定于您的应用程序,因此该信息仅属于您的应用程序。

Dalvik VM使用跟踪垃圾收集器(Mark & Sweep Approach)

答案 1 :(得分:1)

parens中的数字是垃圾收集器运行的进程号。您可以从shell执行ps或检查DDMS以查找应用程序的进程号。按流程编号过滤,以查看运行应用程序的VM实例发生的垃圾收集。