Glide 会自动防止重复调用吗?

Does Glide automatically prevent duplicate calls?

Glide会自动忽略下面代码中的第二次调用吗?或者我会收到 2 个单独的 HTTP 请求吗?另外,如果它确实自动忽略了第二次调用,它只是 "most of the time" 还是 "guaranteed thread-safe always only once"?

Glide.with(context).downloadOnly().load(some_url).into(500, 500);
Glide.with(context).downloadOnly().load(some_url).into(500, 500);

我看了他们RequestBuilder class.

他们似乎检查是否有以前的请求,如果有与您正在制作的新请求相同的请求,他们会重新使用它,如果不是 运行(或完成)他们开始了。

因此,如果您的第一个请求仍然是 运行,它只会给它一个继续 运行 的机会,而不会重新交付结果。

如果之前的请求失败或者已经完成,它会重新开始,并重新传递结果。