以下代码抛出java.net.SocketTimeoutException: Accept timed out
:
ServerSocket serverSocket = new ServerSocket(0, 1, InetAddress.getLocalHost());
serverSocket.setSoTimeout(6000);
serverSocket.accept();
我尝试在创建ServerSocket
时更改所有内容,但错误仍然相同。如果有的话,请指导我在这里缺少的东西。
答案 0 :(得分:3)
您的代码正在执行的操作是侦听本地主机 1 的端口0上的传入TCP / IP请求6秒。
以下是您获得SocketTimeoutException
的原因。
1 - 如果您不希望“只有在6秒内到达时才接受例外”行为......这让我觉得有些奇怪......你不应该在服务器套接字对象。