具有改造功能的并行 HTTP 请求

2022-09-01 20:24:08

我有一个Android应用程序,它目前正在使用库来发出网络请求并显示下载的图像。VolleyNetworkImageView

我想测试 的功能,因为我需要运行很多请求(数千个),所以我有点担心并行执行。 处理并行请求,该将并发运行的请求限制为四个,而其他请求则排队等待执行。在文档中,我没有找到任何方法来处理并发请求的数量,我怀疑这些细节留给了这个库中的开发人员。RetrofitVolleyRequestQueueRetrofit

这是正确的吗?如果是这样,是否有任何面向Android的实现/库可用?否则,处理并行请求的最佳做法是什么?


答案 1

改造使用 用于排队请求。Executor

默认使用允许无限线程。这适合大多数用例,因为通常您一次只会有一个或两个请求发生。Executors.newCachedThreadPool

但是,您可以通过在生成 .调用 setExecutors 并传入使用受限线程池的执行器(限制为所需的任何数量)。对于第二个参数,只需传递 MainThreadExecutor 的新实例,以便在主线程上发生回调。RestAdapter


答案 2

推荐