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

标签 java android httpurlconnection

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

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

最佳答案

A - 文档

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

具体写在documentation中的accessor/getter方法中;

public int getConnectTimeout() Returns setting for connect timeout. 0 return implies that the option is disabled (i.e., timeout of infinity).

Returns: an int that indicates the connect timeout value in milliseconds Since: 1.5 See Also: 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());

    }

}

C - 输出

Default Connection Timeout : 0
New Connection Timeout     : 1000

关于java - Android下HttpURLConnection的默认超时时间是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49581485/

相关文章:

java - class.getResource() (Java) 的上下文是什么?

android - 单击按钮时异步方法未运行

android - WebView 距顶部的滚动距离

android - 使用 Android HttpURLConnection 从 URL 获取文本

java - HttpUrlConnection 是否存在并发惩罚?

主线程中的 Java 异常 - ClassNotFoundException

java - 在 Java 中处理文件路径的最佳方式是什么?

java - Grails:直接从 src/java 使用 GORM 的最佳方式是什么?

android - ListView(ArrayAdapter)动画中的 OnClick 缩放 ImageViews 无法正常工作

android - HttpURLConnection 运行时异常