Java 使用getResponseCode(HttpUrlConnection)后是否需要关闭inputStream
当我只检查下面的响应代码时,是否需要关闭inputStreamJava 使用getResponseCode(HttpUrlConnection)后是否需要关闭inputStream,java,inputstream,httpurlconnection,Java,Inputstream,Httpurlconnection,当我只检查下面的响应代码时,是否需要关闭inputStream URL u = new URL(url); HttpUrlConnection con = (HttpUrlConnection) url.openConnection(); int statusCode; try { statusCode = con.getResponseCode(); } catch(Exception ex){} 没有,但是… Java有一个垃圾收集器
URL u = new URL(url);
HttpUrlConnection con = (HttpUrlConnection) url.openConnection();
int statusCode;
try {
statusCode = con.getResponseCode();
} catch(Exception ex){}
没有,但是…Java有一个垃圾收集器。
这意味着:当没有活动线程引用对象时,Java将销毁对象。
如果一个线程离开了一个方法,那么所有对象都将很快从RAM中删除 但是。。。直接关闭它们更干净。阅读起来更好。
在某些情况下,明确的结束是必要的。否则,系统资源可能会“永远被阻止”——但这几乎不取决于所用库的实现。作为服务器http的客户端,当您关闭连接时,您将关闭客户端和服务器http之间的链接 因此,为了获得最佳实践,请关闭连接
如果在服务器尚未返回响应时客户端关闭了请求,则服务器可以捕获断管异常,然后服务器可以管理客户端请求的关闭连接。这是否回答了您的问题?