首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jdk URL应该和如何关闭?

jdk URL应该和如何关闭?
EN

Stack Overflow用户
提问于 2012-09-28 09:06:40
回答 2查看 129关注 0票数 0

我用java.net.URL从互联网上获取网页,我设置了keepAlivemaxConnections

代码语言:javascript
运行
复制
System.setProperty("http.keepAlive", "true");
System.setProperty("http.maxConnections","600");

然后我开始用几个线程从互联网上获取html,比如:

代码语言:javascript
运行
复制
protected static String content(URLConnection conn) throws IOException {
    try (InputStream in = getInputStream(conn)) {
        //bla bla bla...
        // get bytes from in
        return new String(bytes, charset);
    }
}

但是我发现当我运行这个程序一段时间(5-8小时)时,目标网站(用于测试)是否建立了760个连接?

那么,我是否应该以及如何手动关闭URLConnection?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-28 09:52:46

我从未见过使用它的API显式关闭连接的方法。但是,您可以使用setReadTimeout方法设置连接读取超时。这需要在建立连接之前进行设置。

票数 0
EN

Stack Overflow用户

发布于 2012-09-28 09:20:00

老实说,您可以尝试使用Socket/ServerSocket而不是URLConnection -使用socket,您可以在选择的时候关闭socket,并且它为您提供了对何时打开、关闭、读取和写入连接的更详细的控制。查看API:

http://docs.oracle.com/javase/6/docs/api/java/net/Socket.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12632250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档