Red de conocimiento informático - Aprendizaje de programación - Cómo configurar el tiempo de espera de conexión para la comunicación de socket Java

Cómo configurar el tiempo de espera de conexión para la comunicación de socket Java

Utilice setSoTimeout(int?timeout) en el método jdk para establecer el tiempo de espera de la conexión en milisegundos.

Código de referencia:

SocketAddress?address?=?new?InetSocketAddress("192.168.0.104",?8888);

ServerSocket?s?=? new?ServerSocket();?

s.bind(dirección);?

Socket?socket?=?s.accept();

socket. setSoTimeout(5?*?1000);?

Cuando esta opción se establece en un valor de tiempo de espera distinto de cero, las llamadas a read() en el InputStream asociado con este Socket solo se bloquearán durante este período de tiempo. .

Si se excede el valor de tiempo de espera, se generará una excepción java.net.SocketTimeoutException, pero el Socket aún es válido. Esta opción debe estar habilitada antes de ingresar a las operaciones de bloqueo para que surta efecto.

Además: el valor del tiempo de espera debe ser 0. Un valor de tiempo de espera de "0" se interpretará como un valor de tiempo de espera infinito.