Java Socket не учитывает тайм-аутJAVA

Программисты JAVA общаются здесь
Anonymous
Java Socket не учитывает тайм-аут

Сообщение Anonymous »

Попробовал следующий код с неправильным адресом сервера:

Код: Выделить всё

final int CONNECT_TIMEOUT = 5000; // 5000 ms = 5 seconds
final int SO_TIMEOUT = 5000;
try (Socket socket = new Socket()) {
socket.setSoTimeout(SO_TIMEOUT);
socket.connect(new InetSocketAddress(serverAddress, serverPort), CONNECT_TIMEOUT);
} catch (IOException e) {
logger.warn("...");
}
Я ожидал, что IOException (который является суперклассом SocketTimeoutException) будет перехвачен через 5 секунд.

НО требуется больше одной минуты (вероятно, системный стандарт), пока этот блок не будет достигнут.

Как можно добиться того, чтобы попытки подключения прекратились через 5 секунд?
>

Вернуться в «JAVA»