Glide 核心流程

GlideRequestManager会管理两个队列,一个请求队列,一个等待队列,当生命周期onStop停止时,把运行队列中的任务添加到等待队列中,当生命周期onResume恢复时,又从等待队列中添加到运行队列执行。

关于 Glide.with(this).load(url).into(iv); 主要搞清楚三条线

第一条线:搞清楚这个请求发送到哪里去了?

  • Glide中有两个队列,一个请求队列和一个等待队列,当一个pendingRequests请求过来之后,都是存入这两个队列;RequestManager再进行维护队列

第二条线:为什么RequestManager能管理生合周期?

  • 通过 RequestMangerRetriever 创建一个无UI的Fragment,并将这个Fragment的生命周期绑定到Req