什么是 "system default" http 超时?
What is the "system default" http timeout?
我试图找出 Apache HttpClient 的超时时间。文档文件* 说 http 连接的默认超时是 "system default" 超时。但是"system default"是什么?我如何找出 "system default" 超时设置的值?
*“零超时值被解释为无限超时。负值被解释为未定义(系统默认值)。
根据documentation
,http.socket.timeout
参数控制SO_TIMEOUT
值
AND
您可以通过HttpClient的setParameter()方法设置默认超时时间,
HttpClient httpclient = new HttpClient();
httpclient.getParams().setParameter("http.protocol.version",HttpVersion.HTTP_1_1);
httpclient.getParams().setParameter("http.socket.timeout", new Integer(1000));
httpclient.getParams().setParameter("http.protocol.content-charset", "UTF-8");
这种特定情况下的系统默认值意味着 Java 运行时设置的任何套接字超时值。如果未定义套接字超时配置参数,则 HttpClient 不会尝试控制连接套接字上的 SO_TIMEOUT 设置。
我试图找出 Apache HttpClient 的超时时间。文档文件* 说 http 连接的默认超时是 "system default" 超时。但是"system default"是什么?我如何找出 "system default" 超时设置的值?
*“零超时值被解释为无限超时。负值被解释为未定义(系统默认值)。
根据documentation
,http.socket.timeout
参数控制SO_TIMEOUT
值
AND
您可以通过HttpClient的setParameter()方法设置默认超时时间,
HttpClient httpclient = new HttpClient();
httpclient.getParams().setParameter("http.protocol.version",HttpVersion.HTTP_1_1);
httpclient.getParams().setParameter("http.socket.timeout", new Integer(1000));
httpclient.getParams().setParameter("http.protocol.content-charset", "UTF-8");
这种特定情况下的系统默认值意味着 Java 运行时设置的任何套接字超时值。如果未定义套接字超时配置参数,则 HttpClient 不会尝试控制连接套接字上的 SO_TIMEOUT 设置。