什么时候java放弃了到URL的连接?我没有在URL或URLConnection上看到close()方法,所以它会在请求完成后立即释放连接吗?我主要是想在异常处理程序中查看是否需要进行任何清理.
try { URL url = new URL("http://foo.bar"); URLConnection conn = url.openConnection(); // use the connection } catch (Exception e) { // any clean up here? }
James Schek.. 48
如果转换为HttpURLConnection,则有一个disconnect()方法.如果连接空闲,它可能会立即断开连接.没有保证.
如果转换为HttpURLConnection,则有一个disconnect()方法.如果连接空闲,它可能会立即断开连接.没有保证.
它取决于协议中指定的特定协议.有些维持持久连接,当你的呼叫在连接给出的输入或输出流中关闭时,其他连接会关闭.但除了记住关闭你从URLConnection打开的溪流之外,你无能为力.
来自java.net.URLConnection的javadoc
在请求之后调用URLConnection的InputStream或OutputStream上的close()方法可以释放与此实例关联的网络资源,除非特定的协议规范为其指定了不同的行为.