socket java.io.EOFException
Разбираю довольно известный пример клиент-сервера:
try{
System.out.println("serverClient1 /sct1/ "+serverClient1);
DataInputStream inStream = new DataInputStream(serverClient1.getInputStream());
DataOutputStream outStream = new DataOutputStream(serverClient1.getOutputStream());
String clientMessage="", serverMessage="";
while(!clientMessage.equals("bye")){
clientMessage=inStream.readUTF();
System.out.println("From Client-" +clientNo+ ": :"+clientMessage);
serverMessage="From Server to Client-" + clientNo + " : " + clientMessage.trim();
---> outStream.writeUTF(serverMessage);
outStream.flush();
}
inStream.close();
outStream.close();
serverClient1.close();
}catch(Exception ex){
System.out.println(ex);
}
finally{
System.out.println("Client -" + clientNo + " exit!! ");
}
}
В выделенной строке если использовать как есть, то вылетает исключение java.io.EOFException, происходит выход из while и закрытие соединения. Если эту строку закомментировать, то всё ок. С чем это явление может быть связано?