0
문자열을 수신하기 위해 클라이언트와 연결하는 서버가 있지만 연결이 끊어진 경우 서버는 동일한 상태를 유지하고 시도하는 상태로 돌아 가지 않습니다 다시 연결합니다. setSoTimeout
을 사용했으나 작동하지 않습니다. 이 예외를 던지는되지 않는 이유자바 TCP 연결에서 setSoTimeout이 작동하지 않습니다
ServerSocket welcomeSocket = null;
Socket connectionSocket = null;
BufferedOutputStream outToClient = null;
try {
System.out.println("connecting to send "+fileToSend);
welcomeSocket = new ServerSocket(3249);
connectionSocket = welcomeSocket.accept();
connectionSocket.setSoTimeout(10000);
welcomeSocket.setSoTimeout(10000);
outToClient = new BufferedOutputStream(connectionSocket.getOutputStream());
} catch (Exception ex) {
System.out.println("set so");
break;
// Do exception handling
}
누군가가 말해 주시겠습니까 : 여기
내 코드?
당신은 나에게 그 코드를 제공 할 수 있습니까? – Cbour
클라이언트 소켓 입력 스트림에서 모든 read 메소드를 사용할 수 있습니다 (예 :'connectionSocket.getInputStream(). read()'). 다른 옵션에 대해서는 [Javadoc for InputStream] (http://docs.oracle.com/javase/6/docs/api/java/io/InputStream.html)을 참조하십시오. – Perception
그것은 쓸모가 없습니다. accept()에 대한 시간 제한을 제공합니다. – EJP