Glide:EngineResource

Posted bdmh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Glide:EngineResource相关的知识,希望对你有一定的参考价值。

参阅:《Glide:ActiveResources》

EngineResource是一个资源包装器,实现Resource接口,运行资源计数。

在ActiveResources中,有对它的引用队列。

private final ReferenceQueue<EngineResource<?>> resourceReferenceQueue = new ReferenceQueue<>();

这个队列是用来创建ResourceWeakReference对象的,是对EngineResource的弱引用。

先来看看EngineResource的属性。

  //是否可缓存
  private final boolean isMemoryCacheable;
  //是否可回收
  private final boolean isRecyclable;
  //引用的资源对象
  private final Resource<Z> resource;
  //监听
  private final ResourceListener listener;
  //键值,查找资源用
  private final Key key;
  //计数用,引用+1,释放-1
  private int acquired;
  //是否已经回收
  private boolean isRecycled;

  interface ResourceListener 
//资源释放监听
    void onResourceRele

以上是关于Glide:EngineResource的主要内容,如果未能解决你的问题,请参考以下文章

Glide:EngineResource

Glide ② — 缓存机制

Glide 缓存机制

Glide:Engine

Glide:Engine

Glide 缓存机制