0

我的问题更像是为了节省内存和提高效率而采取的最佳路线。

所以让我们开始吧,我有一个 zip 文件,我使用“ZipInputStream”类来搜索特定文件(图像),在获得图像的位置后,我将其处理成图像并将其展示给用户。现在我想存储这个图像,这样它就不会进入 zip 文件中流式传输文件的整个过程。

我目前正在做这个过程:

过程 1:“将输入流保存到内存中的哈希映射中,当内存达到一定限制后,我将其删除。”

过程 2:然后我想如果我只是保存 zipInputStream 中使用的位置并返回到该位置并通过正确的位置在 zip 文件中压缩,它可能会更有效。这样我就有能力在不占用内存的情况下获取图像。我还没有测试过这个理论。

概括:

流程 1 有它的弱点,例如用户只是匆匆完成这些功能,最终可能会崩溃。过程 2 可能会更明智地计算内存并且加载时间会稍长一些。

问题:

“那么我应该走哪条路线?1、2,或者这个问题中没有提出的东西”。

4

1 回答 1

0

我要做的是将图像本身存储在LruCache中。这是一个缓存,当图像在一段时间内不使用时会被清除。当图像被删除时,只需重复加载图像的过程。这是安全和快速的。

于 2012-07-26T14:48:32.557 回答