Java ServerSocket.setSoTimeout(int timeout)
Syntax
ServerSocket.setSoTimeout(int timeout) has the following syntax.
public void setSoTimeout(int timeout) throws SocketException
Example
In the following code shows how to use ServerSocket.setSoTimeout(int timeout) method.
/*from w w w. j a v a2s .c om*/
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.SocketTimeoutException;
public class Main extends Thread {
private ServerSocket serverSocket;
public Main() throws IOException {
serverSocket = new ServerSocket(8008);
serverSocket.setSoTimeout(10000);
}
public void run() {
while (true) {
try {
System.out.println("Waiting for client on port " + serverSocket.getLocalPort() + "...");
Socket client = serverSocket.accept();
System.out.println("Just connected to " + client.getRemoteSocketAddress());
client.close();
} catch (SocketTimeoutException s) {
System.out.println("Socket timed out!");
break;
} catch (IOException e) {
e.printStackTrace();
break;
}
}
}
public static void main(String[] args) {
try {
Thread t = new Main();
t.start();
} catch (IOException e) {
e.printStackTrace();
}
}
}