2016-09-29 126 views
0

我建立在图像将只能从文件系统,而不是从互联网上下载一个画廊的应用程序,想知道是否有在读的任何性能差异/写入文件系统VS DiskLRUCache (JakeWharton)。如果是这样,我可以使用“DiskLRUCache”存储,然后,通过从缓存中更改存储目录到SD卡/内部文件系统?由于读/写性能:DiskLruCache VS文件系统

+0

对内存的读写肯定有文件系统的先进性。您应该使用内存缓存,以避免经常创建位图和gc。 – Bennyhuo

+0

我明白有关内存缓存,但我问这是存储在磁盘本身“DiskLRuCache”。如果我正确理解你的答案。 –

+0

哦,抱歉,我误解你的问题。 – Bennyhuo

回答

0

如果你读/写从getExternalFilesDirs检索的目录(无需存储许可),那么它都是一样的。我目前正在使用该方法来获取可用于DiskLRUCache的目录。访问延迟并减慢我的UI,所以我也使用内存缓存。

的理念是坚持位图到磁盘DiskLRUCache,并存储在LruCache最近访问的库项目。

获取从LruCache(内存缓存)的对象,如果没有找到,从磁盘(DiskLRUCache)读取,然后将你的内存高速缓存中的对象。为这个逻辑创建一个很好的包装应该直接与它进行交互。