Страницы

Поиск по вопросам

понедельник, 15 июля 2019 г.

java.net.SocketTimeoutException: Read timed out = Соединение с сервером закрыто?

Если задать сокету максимальное время ожидания получения данных 5 секунд
Socket ms = new Socket("127.0.0.1", 1234); ms.setSoTimeout(5000);
то, при ошибке SocketTimeoutException
java.net.SocketTimeoutException: Read timed out
соединение с сервером закроется? То есть, сокет после такого исключения будет закрыт?
А если тайм-аут не устанавливать сокету, то такая ошибка вообще никогда не возникнет?


Ответ

Судя по документации не будет закрыт
If the timeout expires, a java.net.SocketTimeoutException is raised, though the Socket is still valid.
\
А если тайм-аут не устанавливать сокету, то такая ошибка вообще никогда не возникнет?
Да, будет ждать пока ОС не разорвет соединение.

Комментариев нет:

Отправить комментарий