gpt4 book ai didi

java - 在 onLowMemory 方法中调用 Runtime.gc()

转载 作者:太空宇宙 更新时间:2023-11-03 12:14:22 25 4
gpt4 key购买 nike

我们应该使用 Runtime.gc() 吗?或 System.gc()用于清除生产代码中的内存(手动垃圾回收)onLowMemory() Application 类中的方法?

最佳答案

这是一种不好的做法,使用 System.gc()并不意味着您手动使用 gc 它只是提示 jvm 清除垃圾。最好不要使用像 finalize() 这样的方法在Object ,两者均不提供任何保证。在 Application 的 javadoc 中表示系统将在从此方法返回后执行 gc,并以正确的方式进行。

You should implement this method to release any caches or other unnecessary resources you may be holding on to. The system will perform a garbage collection for you after returning from this method.

Application javadoc

所以当你使用 System.gc()onLowMemory()从这个方法返回后的方法,将是另一个垃圾收集工作。从 javadoc 中的提示来看,最好在示例中丢失指向缓存的链接 List<Object> bigCache = null;方法结束后将进行垃圾收集,收集缓存列表并释放内存。

关于java - 在 onLowMemory 方法中调用 Runtime.gc(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47509689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com