首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android ()和System.exit()|System.gc()

Android ()和System.exit()|System.gc()
EN

Stack Overflow用户
提问于 2013-09-29 11:58:33
回答 1查看 2.7K关注 0票数 1

我有一个关于垃圾收集器和Object.finalize()的问题。我创建了一个实现finalize方法的类。如果我在DDMS中运行我的应用程序并强制使用GC,那么在我的类对象上就会调用finalize,没有任何引用。但是,如果我在我的应用程序中调用System.gc(),则不会调用finalize。离开应用程序时调用System.exit(0)不会导致最终结果。为什么不调用finalize?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-29 12:10:16

但是,如果我在我的应用程序中调用System.gc(),则不会调用finalize。

这是因为您的对象不是垃圾收集的。gc()没有完成一个完整的GC。相反,它收集一些垃圾,然后返回。

离开应用程序时调用System.exit(0)不会导致最终结果。

这是因为您的进程正在被终止。终结器不会在进程终止时运行。而且,正如拉格哈南丹所指出的,请不要打电话给System.exit(0)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19077798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档