servidor interfaz grafica fuente datos con codigo cliente chats java api sockets

java - interfaz - ¿Cerrar el paso de entrada de un socket también cierra la conexión del socket?



sockets en java cliente servidor netbeans (1)

Sí, al cerrar la secuencia de entrada se cierra el socket. Debe usar el método shutdownInput en el socket para cerrar solo la secuencia de entrada :

//do sth with fromSocket ... and close it socket.shutdownInput();

Entonces, todavía puede enviar a la toma de salida

//then write to socket again toSocket.print("is socket connection still available?/r/n"); //close socket socket.close();

En la API de Java,

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();

En el código anterior, después de cerrar el InputStream fromSocket, parece que la conexión del socket ya no está disponible: el cliente no recibirá el mensaje "¿Todavía está disponible la conexión del socket?". ¿Eso significa que el cierre de la salida de entrada de un zócalo también cierra el zócalo?