Android HttpClient的有3种超时时间,分别是:
1、
ConnManagerParams.setTimeout(params, 1000);
2、
HttpConnectionParams.setConnectionTimeout(params, 2000);
3、
HttpConnectionParams.setSoTimeout(params, 4000);
下面分别解释:
1、定义了从ConnectionManager管理的连接池中取出连接的超时时间。
2、定义了通过网络与服务器建立连接的超时时间。HttpClient通过一个异步线程去创建与服务器的Socket连接,这就是该Socket连接的超时时间。
3、定义了Socket读数据的超时时间,即从服务器获取响应数据需要等待的时间。
以上3种超时分别会抛出ConnectionPoolTimeoutException,ConnectionTimeoutException与SocketTimeoutException。
从手机端传个300K左右的string到server 居然报错SocketTimeoutException。可是实际上,已经上传成功。
我timeout设置的是10s,于是就很纠结。等待时间到底设置多少s合适?难道要无限大?
待解决。。。