Trong Java API,Việc đóng luồng đầu vào của ổ cắm cũng có đóng kết nối ổ cắm không?
Socket socket = serverSocket.accept();
BufferedReader fromSocket = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter toSocket = new PrintWriter(socket.getOutputStream());
//do sth with fromSocket ... and close it
fromSocket.close();
//then write to socket again
toSocket.print("is socket connection still available?\r\n");
//close socket
socket.close();
Trong đoạn mã trên, sau khi tôi đóng InputStream fromSocket, có vẻ như kết nối ổ cắm không có sẵn nữa - khách hàng sẽ không nhận được "là kết nối ổ cắm vẫn sẵn" tin nhắn . Điều đó có nghĩa là đóng luồng đầu vào của ổ cắm cũng tự đóng chính socket đó không?
Không, nó không ném bất kỳ ngoại lệ ở phía máy chủ. Có vẻ như obj đầu ra toSocket vẫn hoạt động ở phía máy chủ, nhưng ở phía máy khách, kết nối được đóng lại. – dolaameng