如何在java中使用套接字类设置超时连接?

时间:2014-01-03 10:18:09

标签: java sockets

套接字:连接花费2分钟在timeOut之前寻找IP。我希望将时间缩短到10-15秒。

对于连接,我使用以下代码....

public static boolean available (String host, String port){
    try {
          Socket s = new Socket (host, port);
          return true;
       }
    catch (Exception e) {
       return false;
    }
}

如何将超时时间缩短到10-15秒而不是2分钟? 有没有办法做到这一点或任何其他替代方式?

1 个答案:

答案 0 :(得分:2)

您没有为套接字设置超时,您为在该套接字上执行的操作设置了超时。

例如socket.connect(otherAddress, timeout)

socket.setSoTimeout(timeout)用于设置read()操作的超时。

请参阅:http://download.oracle.com/javase/1.4.2/docs/api/java/net/Socket.html