在
给定的IP和端口下,套接字连接失败的原因是什么?有没有办法解决这个问题?在某些情况下,我会得到套接字连接失败。但我等了几分钟后才会知道。有没有办法确定连接是否会在更短的时间内失败?
try{
socketConn = new Socket(this.ip, this.port);
}catch (IOException e){
System.err.println("Failed creating a Socket Connection in Peer constructor for " +id +
" with IP: " +ip+" and on port: "+port);
}
从未连接的Socket
开始,并在connect()
方法上提供一个具有long
超时值的SocketAddress
。
实际上,设置此设置非常重要,否则您的连接操作将无限期地阻塞(默认情况下)
套接字Javadoc
由于服务器响应缓慢,经常发生连接超时。 检查网络连接和服务器。