クライアントに接続して文字列を受信するサーバーがありますが、接続が失われると、サーバーは同じ状態のままになり、再度接続を試行する状態に戻りません。使用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
}
これが例外をスローしない理由を教えてください。