Android系统。如何在RAM中保留缓存?

时间:2012-07-16 09:16:06

标签: android file caching ram

我需要在我的应用程序中使用正则表达式搜索文本文件(大约40MB),正如您可以想象的那样,通常需要1分钟左右才能完成。我必须反复这样做。

我想知道在第一次搜索后我是否可以将这些文件保存在RAM中。我可以这样做吗?我的意思是,找到一种明确说明在RAM中保留一段时间的方法。

2 个答案:

答案 0 :(得分:1)

将结果保存在将保存搜索结果的自定义对象中。这将把它保存在RAM中(只要你保留对它的引用)。

另外请记住,在Android设备的RAM中分配40 MiB并不是一个好主意,因为RAM在许多低端设备中非常有限。这可以使你的应用程序成为Android的一个非常美味的目标,当它看起来释放内存。

答案 1 :(得分:1)

考虑将搜索结果放在WeakHashMap中,其密钥仅在您需要存在值的持续时间内存在,例如Activity的范围。但请注意内存问题。在某些设备上,应用程序的进程可能只有堆大小as low as 16M