美文网首页
LruCache原理

LruCache原理

作者: enchanted1107 | 来源:发表于2020-09-04 22:42 被阅读0次

LruCache可以翻译为最近最少使用缓存,它用强引用保存需要缓存的对象,它内部维护一个队列(实际上是LinkedHashMap内部的双链表,不支持线程安全,LruCache对它进行封装,添加了线程安全操作),当其中的一个值被访问时,它被放倒队列尾部,当缓存将满时,队列头部(也就是最近最少被访问的)被丢弃,之后可以被垃圾回收。
LruCache比较重要的几个方法如下:
●public final Vget(K key)
返回cache中key对应的值,调用这个方法后,被访问的值会移动到队列的尾部。
●public final V put(K key,V value)
根据key存放value,存放的value会移动到队列的尾部
●protect int sizeOf(K key,V value)
返回每个缓存对象的大小,用来判断缓存是否快要满了,这个方法必须重写。
●protect void entryRemoved(boolean evicted,K key,V oldValue,V newValue)
当一个缓存对象被丢弃时调用的方法,这是个空方法,可以重写,不是必须的,第一个参数为true:当缓存对象是为了腾出空间而被清理时候。第一个参数为false:缓存的对象entry被remove移除或者被put覆盖时候。

相关文章

  • Android 高级面试-3:Java、同步和并发相关

    1、Java 相关 1.1 缓存相关 LruCache 的原理 DiskLruCache 的原理 LruCache...

  • (1)LruCache原理分析

    浅析LruCache原理 Android用LruCache(Least recently use Cache 意...

  • Android缓存原理

    本文主要内容 LruCache使用 LruCache原理 DiskLruCache使用 DiskLruCache原...

  • 面试题

    LruCache原理 LruCache 即最近最少使用内存(Least recently usage cache)...

  • Java基础_LruCache工作原理

    本文主要从如下节点讲解 LRU算法简介 LruCache的简介 LruCache的代码实操 LruCache的原理...

  • 缓存分析

    LruCache与DiskLruCache 文章目录 一 Lru算法 二 LruCache原理分析2.1 写入缓存...

  • Android常问的面试题(二)

    (一)图片 1、图片库对比 2、LRUCache原理 LruCache是个泛型类,主要原理是:把最近使用的对象用强...

  • LRUCache原理

    讲到LruCache不得不提一下LinkedHashMap,因为LruCache中Lru算法的实现就是通过L...

  • LRUCache原理

    Least Recently Used => LRU:最近最少使用算法 为什么使用LRUcache?Android...

  • LRUCache原理

    roundUpToPowerOfTwo(int i) 获取大于等于 某个整数 并且是 2 的幂数的整数 publi...

网友评论

      本文标题:LruCache原理

      本文链接:https://www.haomeiwen.com/subject/uygtektx.html