我的问题更像是为了节省内存和提高效率而采取的最佳路线。
那么让我们开始吧,我有一个压缩文件,我使用"ZipInputStream“类来搜索特定的文件(图像),在获得图像的位置后,我将其处理成图像并向用户展示。现在我想存储这个图像,这样它就不会进入在zip文件中流出文件的整个过程。
我目前正在做这个过程:
处理1:“将输入流保存到内存中的hashmap中,在达到内存中的某个限制后,我将其删除。”
过程2:然后我在想,如果我只保存zipInputStream中使用的位置,然后返回到那个位置,然后通过适当的位置压缩压缩文件,可能会更有效率。这样,我就可以在不占用内存的情况下获得图像。不过,我还没有测试过这个理论。
摘要:
进程1有它的弱点,比如用户只是匆忙地浏览函数,最终可能会崩溃。进程2可能会计算出更多的内存,并加载更长的时间。
问题:
那么我应该走哪条路线呢?1,2,还是这个问题中没有放出来的东西。
发布于 2012-07-26 22:48:33
我要做的是将图像本身存储在LruCache中。这是一个缓存,当图像在一段时间内不使用时,它会被清除。删除图像后,只需重复加载图像的过程。这是安全和快速的。
https://stackoverflow.com/questions/11671800
复制相似问题