我有以下代碼:是否應關閉Java流在關閉後臺套接字之前?
public void disconnect()
{
running = false;
if(thread != null)
thread.interrupt();
thread = null;
try
{
socket.close();
}catch(Exception e){e.printStackTrace();}
}
我有收集從流和通過所述輸出流的消息發送一個PrintWriter輸入一個BufferedReader。在關閉套接字之前,BufferedReader和PrintWriter是否應該關閉?打開I/O流是不是很糟糕?
使用該流的代碼應能夠到IO例外可以(並將)從具有所述背襯意外關閉(或者通過本地代碼或通過網絡錯誤,等)導致反應。 – 2012-06-15 00:27:26
@ user166390網絡錯誤不會導致'關閉後臺[套接字]'。它保持打開,直到創建它的應用程序關閉它。 – EJP