android下的HttpURLConnection的默认读取和连接超时是多少?
它的接缝默认Timeout为0,但现在我很好奇,将连接超时设置为无限是否有任何缺点?如果出现问题,我们可以建立一个永远等待的连接吗?
答案 0 :(得分:4)
由于HttpConnectionTimeout的Java文档默认设置为0 (表示无穷大),因此可以进行修改。
具体来说,它是用documentation;
中的accessor / getter方法编写的public int getConnectTimeout()返回连接超时的设置。 0 return意味着该选项被禁用(即,超时) 无穷大)。
返回:一个int,表示连接超时值 毫秒自: 1.5参见:setConnectTimeout(int),connect()
如果我是你,我会在开始连接之前设置连接超时,并根据我自己的初始值设置逻辑/流量。下面,您可以看到如何获取默认值并设置/修改连接超时参数的示例。
package com.levo.so.huc;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;
public class HttpConnectionTimeoutDemo {
public static void main(String[] args) throws IOException {
String url = "http://www.google.com/";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
System.out.println("Default Connection Timeout : " + con.getConnectTimeout());
con.setConnectTimeout(1000);
System.out.println("New Connection Timeout : " + con.getConnectTimeout());
}
}
Default Connection Timeout : 0
New Connection Timeout : 1000