2015-11-02 4787 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