Android Lrucache引用/对象是否重复?

时间:2012-11-13 10:05:38

标签: android memcached android-lru-cache

我希望通过应用Android LruCache来提高我的应用程序速度并避免大量调用服务器。这是我的情景:

我创建了2个LruCache对象。

private LruCache<String, List<Items>> mListItemsCache;

private LruCache<String, Items> mItemsCache;

mItemsCache将保存可由唯一Id字符串检索的所有项目的缓存。另一方面,mListItemsCache将缓存所有不同的Items列表。每个列表都是基于mItemsCache上的可用项构建的。

我的问题是从mListItemsCache或mItemsCache检索的Item实际上是同一个Object吗?

由于put(K,V),每次存储到LruCache时数据是否会重复?

1 个答案:

答案 0 :(得分:0)

我认为有必要为您提供更多代码答案: 什么是物品? 你怎么能用字节来衡量项目? 为什么同一个项目需要两个缓存?

我会使用List(对于mListItemsCache),其中每个String都是缓存对象(mItemsCache)的键。 因此,每当您将一个Item添加到缓存(mItemsCache)时,将该键添加到List(mListItemsCache) 例如:    mItemsCache.put(myKey,Items);    mListItemsCache.add(的myKey);