【发布时间】:2010-07-10 20:43:20
【问题描述】:
这是我用来创建多线程 httpclient 对象的代码。我正在尝试全面设置 4 秒超时,因此如果 4 秒内没有任何反应,则放弃请求。我看到某些请求的执行时间非常长,例如在 300 秒范围内。我似乎无法弄清楚为什么会这样。有什么想法吗?
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, 4000);
HttpConnectionParams.setSoTimeout(httpParams, 4000);
// set request params
httpParams.setParameter("http.protocol.cookie-policy", CookiePolicy.BROWSER_COMPATIBILITY);
httpParams.setParameter("http.useragent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
httpParams.setParameter("http.protocol.wait-for-continue", 4000);
SchemeRegistry schemeRegistry = new SchemeRegistry();
schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
ClientConnectionManager cm = new ThreadSafeClientConnManager(httpParams,schemeRegistry);
HttpClient httpClient = new DefaultHttpClient(cm, httpParams);
【问题讨论】:
标签: java http httpclient