Android 在构建OkHttpClient时,如何设置并发请求的数量? 背景
我正在建立一个改造客户端。作为这个客户机的一部分,我还在其中构建一个OkHttpClient。下面是我所说的代码:Android 在构建OkHttpClient时,如何设置并发请求的数量? 背景,android,retrofit2,okhttp,Android,Retrofit2,Okhttp,我正在建立一个改造客户端。作为这个客户机的一部分,我还在其中构建一个OkHttpClient。下面是我所说的代码: public static final String BASE_URL = "https://api.darksky.net/forecast/<secret-key>/"; public static final OkHttpClient.Builder httpClient = new OkHttpClient.Builder().dispatcher() pri
public static final String BASE_URL = "https://api.darksky.net/forecast/<secret-key>/";
public static final OkHttpClient.Builder httpClient = new OkHttpClient.Builder().dispatcher()
private static Retrofit retrofit = null;
public static DarkSkyEndpoints getClient() {
if (retrofit == null) {
retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient.build())
.build();
}
DarkSkyEndpoints endpoints = retrofit.create(DarkSkyEndpoints.class);
return endpoints;
}
public静态最终字符串BASE\u URL=”https://api.darksky.net/forecast//";
public static final OkHttpClient.Builder httpClient=new OkHttpClient.Builder().dispatcher()
私人静态改装=空;
公共静态DarkSkyEndpoints getClient(){
如果(改装==null){
改装=新改装.Builder()
.baseUrl(基本URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient.build())
.build();
}
DarkSkyEndpoints endpoints=改装.create(DarkSkyEndpoints.class);
返回端点;
}
我想要什么
我想构建一个一次只允许1个并发线程的OkHttpClient
我所知道的
在构建OkHttpClient进行改造时,如何设置并发线程的最大数量?您需要创建
Dispatcher
类的实例,并将其传递给Dispatcher()
方法。试着这样做:
Dispatcher dispatcher = new Dispatcher();
dispatcher.setMaxRequests(MAX_REQUESTS_NUMBER);
public static final OkHttpClient httpClient = new
OkHttpClient.Builder().dispatcher(dispatcher).build();
....
retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient)
.build();