堆压缩的编程模式?

时间:2018-02-11 14:17:55

标签: android garbage-collection

是否存在用于堆压缩的Android编程模式。就像应用程序说“好再见”一段时间,关闭UI,然后回来用它的UI?

目前的Android设计似乎是这样,他们不希望更长时间的“可感知”。并且决定仅针对后台应用程序进行压缩。

根据这里的答案:
https://stackoverflow.com/a/39747070/9307810

我可以想象一个要求中止或压缩的对话框。当最终用户选择压缩时,如何做到这一点?

1 个答案:

答案 0 :(得分:0)

  

当最终用户选择压缩时,如何做到这一点?

不会。无法强制GC执行堆压缩。

  

是否存在用于堆压缩的Android编程模式

压缩由运行时处理,适用于您运行的任何Android版本。

您的重点应该是确保您的流程及时终止(即避免持续运行的服务)并避免不必要的内存保留(例如,onTrimMemory()回调中的清除缓存,以获得适当的修剪级别)。

  

并决定仅针对后台应用进行压缩

我相信即使对于Android 8.0中的前景应用,GC也会执行一些压缩。