Java DefaultHttpAsyncClient线程安全吗?为什么start()方法是必需的?
我正在使用Apache的库。有几件事我不明白: 1)Java DefaultHttpAsyncClient线程安全吗?为什么start()方法是必需的?,java,http,asynchronous,client,Java,Http,Asynchronous,Client,我正在使用Apache的库。有几件事我不明白: 1) DefaultHttpAsyncClient是否线程安全?我是否可以重用同一个客户端实例来发出多个并发请求 2) 为什么我需要start()客户端才能发出请求 HttpGet httpGet = new HttpGet("http://www.google.com"); DefaultHttpAsyncClient client = new DefaultHttpAsyncClient(); client.start(); // If the
DefaultHttpAsyncClient
是否线程安全?我是否可以重用同一个客户端实例来发出多个并发请求
2) 为什么我需要start()
客户端才能发出请求
HttpGet httpGet = new HttpGet("http://www.google.com");
DefaultHttpAsyncClient client = new DefaultHttpAsyncClient();
client.start(); // If the client is not started, the request will never be made
Future<HttpResponse> future = client.execute(httpGet, new FutureCallback<HttpResponse>() {
public void failed(Exception arg0) {
}
public void completed(org.apache.http.HttpResponse arg0) {
}
public void cancelled() {
}
});
HttpResponse httpResponse = future.get();
HttpGet-HttpGet=new-HttpGet(“http://www.google.com");
DefaultHttpAsyncClient=新的DefaultHttpAsyncClient();
client.start();//如果客户端未启动,则永远不会发出请求
Future=client.execute(httpGet,new FutureCallback()){
公共作废失败(异常arg0){
}
公共无效已完成(org.apache.http.HttpResponse arg0){
}
公众假期取消(){
}
});
HttpResponse HttpResponse=future.get();
至于第二个问题,谢谢,我不明白为什么什么都没发生:)