Glide——缓存分析整理
文章目录 LruCache 概述 原理 DiskLruCache 概述 Glide缓存概述 资源分类 缓存设计 Glide 缓存源码分析 1、生成key 2、创建缓存对象LruResourceCache 3、获取内存缓存中的图片 4、开启加载图片线程 5、获取磁盘缓存 6、写入磁盘 7、写入内存缓存 写入弱引用缓存 写入LruCache LruCache 概述 LruCache是Android 3.1所提供的一个缓存类,所以在Android中可以直接使用LruCache实现内存缓存。 主要算法原理是把最近使用的对象用强引用(即我们平常使用的对象引用方式)存储在 LinkedHashMap 中。当缓存满时,把最近最少使用的对象从内存中移除,并提供了get和put方法来完成缓存的获取和添加操作。 简单使用 int maxMemory = ( int ) ( Runtime . getRuntime ( ) . totalMemory ( ) / 1024 ) ; int cacheSize = maxMemory / 8 ; mMemoryCache = new LruCache < String , Bitmap > ( cacheSize ) { @Override protected int sizeOf ( String key , Bitmap value ) {