上一篇博客说过了有关Android的HTTP API 的基础使用规则(包括一些基础类的讲解和项目中应该注意的问题)。这次仍然结合上一次的问题,在项目中碰见的另一个问题来说。
在项目中,向服务器发出请求的网络线程线程不止有一个,比如,用户在获取联系人列表的时候,回向服务器发送一个线程请求,但是从启动而言,总是有个一个轮询线程,这个线程每隔10s会请求一次服务器,然后把服务器的内容返回给客户端。现在问题来了,我们把请求服务器作为的方法作为一个静态方法,然后每个线程都调用这个方法来请求服务器,代码如下:
private static InputStream getServetReponse(HttpClient mHttpCLient, HttpPost post) {
try {
HttpResponse mResponse = mHttpCLient.execute(post);
//向服务器做请求连接
mEntity = mResponse.getEntity();
return (mEntity.getContent());
} catch (SocketTimeoutException e) {
//请求超时异常捕捉
Log.i("lzw", "connection_timeout");
e.printStackTrace();
e.printStackTrace();
Log.i("lzw", "IOException");