我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
那么我将有一个连接浪费资源。
有什么建议么?