Android下HttpURLConnection的默认超时是多少?

lok*_*oki 2 java android httpurlconnection

Android下HttpURLConnection的默认读取和连接超时是多少?

接缝的默认超时是0,但是现在我很好奇,将连接超时设置为无限对它们有什么缺点吗?如果出现问题,我们可以建立一个永远等待的连接吗?

Lev*_*glu 5

A-文件

由于Java文档的HttpConnectionTimeout默认设置为0 (表示无穷大),因此可以修改。

具体来说,它是用文档中的accessor / getter方法编写的

public int getConnectTimeout()返回连接超时的设置。返回值0表示该选项已禁用(即无限超时)。

返回:一个指示连接超时值(以毫秒为单位)的int,因为:1.5另请参见:setConnectTimeout(int),connect()

如果您是我,我会在开始连接之前设置连接超时,并根据自己的初始值设置逻辑/流。在下面,您可以看到有关如何获取默认值以及设置/修改连接超时参数的示例。

B-示例代码

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());

    }

}
Run Code Online (Sandbox Code Playgroud)

C-输出

Default Connection Timeout : 0
New Connection Timeout     : 1000
Run Code Online (Sandbox Code Playgroud)