Glide会自动忽略以下代码中的第二个电话吗?或者我会获得2个单独的HTTP请求?此外,如果它确实自动忽略第二个呼叫,它是“大部分时间”还是“保证线程安全始终只有一次”?
Glide.with(context).downloadOnly().load(some_url).into(500, 500);
Glide.with(context).downloadOnly().load(some_url).into(500, 500);
答案 0 :(得分:1)
我看了他们的RequestBuilder课程。
它们似乎检查是否有先前的请求,如果有一个等同于您正在制作的新请求,它们会重新使用它,如果它没有运行(或已完成)它们开始它
因此,如果您的第一个请求仍在运行,它只会让它有机会继续运行,并且不会重新发送结果。
如果先前的请求失败或已经完成,它将再次启动它,并重新发送结果。