gpt4 book ai didi

抛出 ConnectException 之前的 Java 延迟

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:49:31 31 4
gpt4 key购买 nike

我正在用 Java 编写一些代码来从 url 下载内容,在我的配置中,一些下载应该由代理处理,而另一些则没有。

因此,我编写了这段代码(有效)来下载所有 URL 类型,但我想减少抛出 ConnectException 之前的延迟时间,以便代码可以更快地执行。

URL global_url = new URL("http://google.com");
Scanner sc = null;
try {
sc = new Scanner(global_url.openStream());
}
catch (ConnectException e) {
try {
System.setProperty("http.proxyHost", "my.host");
System.setProperty("http.proxyPort", "my.port");
sc = new Scanner(global_url.openStream());
System.setProperty("http.proxyHost", "");
System.setProperty("http.proxyPort", "");
}
catch (ConnectException exc) {
//Do stuff
}
}

现在大约需要。 10 秒 异常被抛出之前,我想将这个时间减少到最多 2 秒或 3 秒。

我能得到一些帮助吗?谢谢!

最佳答案

你可以这样设置超时时间:

long connectTimeout = 3000;
URL global_url = new URL(urlPath);
URLConnection con = global_url.openConnection();
con.setConnectTimeout(connectTimeout);

您可以将 connectTimeout 设置为以毫秒为单位。由于需要 3s 超时,所以设置为 3000。

关于抛出 ConnectException 之前的 Java 延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17550905/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com