0
我在AsyncTask上執行網絡操作;AsyncTask,網絡操作和超時
try {
int timeOut = 5000;
httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters, timeOut);
client = new DefaultHttpClient(httpParameters);
request = new HttpGet(URL);
response = client.execute(request);
in = null;
in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
line = in.readLine();
} catch (Exception e) {
return "ERROR CONNECTING TO SERVER";
}
我很困擾超時和慢速連接。
如果超過5秒鐘來檢索數據,那麼我會收到超時異常。 據我所知,如果任務沒有在5秒內完成,那麼它會超時,但如果它已經聯繫服務器,並且正在下載超過5秒鐘下載的數據,該怎麼辦?
我不希望將超時設置爲20秒,因爲如果在聯繫服務器時出現問題,等待時間太長。
有沒有另一種方法,我應該這樣做,而不是使用超時?
這可能是我的理解是floiled,並且超時被忽略一旦達到服務器。
謝謝你的信息。 所以我正確的是,當服務器到達時,即使服務器需要很長時間來響應,超時也會被忽略。 這是因爲我有時會有大量的數據需要10秒鐘才能下載。 – matty357 2015-04-01 15:11:23