Android中glide原理与使用,Glide 的缓存原理

[Glide 源码分析解读-缓存模块-基于最新版Glide 4.9.0](https://www.jianshu.com/p/62b7f990ee83)

![](https://markdown-1258186581.cos.ap-shanghai.myqcloud.com/20200307232701.png)

Glide 内部是使用 LruCache、弱引用和硬盘缓存实现的。

Glide 主要将缓存分为两块内存缓存和硬盘缓存,两种缓存的结合,构成了 Glide 缓存机制的核心。

### 内存缓存

```java

skipMemoryCache(true)

```

默认是开始缓存的,如果我们不需要缓存,传入 false

内存缓存会先调用 loadFromCache 方法获取缓存,如果获取到,就直接调用 cb.onResourceReady() 方法进行回调,如果是没获取到,那么往下执行。

```java

private EngineResource> getEngineResourceFromCache(Key key) {

Resource> cached = cache.remove(key);

final EngineResource result;

if (cached == null) {

result = null;

} else if (cached instanceof EngineResource) {

result = (EngineResource) cached;

} els

你可能感兴趣的:(Android中glide原理与使用,Glide 的缓存原理)