Если задать сокету максимальное время ожидания получения данных 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.
\
А если тайм-аут не устанавливать сокету, то такая ошибка вообще никогда не возникнет?
Да, будет ждать пока ОС не разорвет соединение.
Комментариев нет:
Отправить комментарий