Ссылка Android Lrucache / объект дублируется или нет?

Я хочу увеличить скорость своих приложений и избежать тяжелых звонков на сервер с помощью Android LruCache. Вот мой сценарий:

Я создал 2 объекта LruCache.

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

private LruCache<String, Items> mItemsCache;

mItemsCache будет хранить кэш всех элементов, которые могут быть получены по уникальной строке Id. С другой стороны, mListItemsCache будет кэшироваться из всех различных элементов списка. Каждый список строился на основе доступных элементов в mItemsCache.

Мой вопрос заключается в том, что элемент, который был получен из mListItemsCache или mItemsCache, на самом деле является одним и тем же объектом?

Будут ли данные дублироваться каждый раз, когда они были сохранены в LruCache из-за пут (K,V)?

1 ответ

Я думаю, что потребуется больше кода, чтобы дать вам ответ: что такое Предметы? Как вы можете измерить элементы в байтах? Зачем вам два кеша для одного предмета?

Я хотел бы использовать список (для mListItemsCache), где каждая строка является ключом к объекту кэша (mItemsCache). Таким образом, всякий раз, когда вы добавляете элемент в кеш (mItemsCache), добавляйте ключ в список (mListItemsCache), например: mItemsCache.put(myKey, Items); mListItemsCache.add(MYKEY);

Другие вопросы по тегам