我java.net.HttpURLConnection在 Android (API 16) 上使用。我使用connect()然后从连接getInputStream()中获取InputStream读取数据。在我使用InputStream(即消费数据)之后,我close()就可以了。
问题是:这是否也关闭了底层证券HttpURLConnection(好像通过调用disconnect()它)?我的猜测不是,但我只是想确认一下。更普遍的问题是:当连接不再有用时,我是否需要调用 java.net.HttpURLConnection.disconnect() ?
问题是我有一种方法可以打开一个HttpURLConnection给定的主机。签名是:InputStream OpenHttpConnection(String stringURL, String method)。这将返回一个InputStream,调用者使用它从连接中读取数据,但是如果我disconnect()从该方法的主体中调用,那么 将InputStream关闭并变得无用(我已经确认了这一点)。但是,另一方面,如果当我从调用者调用 , 时连接没有关闭close(),InputStream那么我将有一个连接浪费资源。
有什么建议么?