2015-11-02 4794 views
0

如何在Java中关闭或不关闭HttpURLConnection如何在java中关闭或不关闭HttpURLConnection

HttpURLConnection connection; 
InputStream inputStream = connection.getInputStream(); 

之间有什么不同:

  1. inputStream.close();
  2. connection.disconnect();

会发生什么尝试关闭或断开连接。如果连接已经关闭或断开连接。

回答

0

如果客户端调用HttpURLConnection.getInputSteam()。close(),稍后调用HttpURLConnection.disconnect()将不关闭Socket。即Socket重用(缓存)

如果客户端不调用close(),调用disconnect()将关闭InputSteam并关闭套接字。

因此,为了重用Socket,只需调用InputStream close()。不要调用HttpURLConnection disconnect()。

+1

记得在finally块中调用close(),就好像你不这样做,那么这个连接就不能被重用,并且会导致资源泄漏。 – judepereira