2010-09-22 2 views
0

Я довольно новичок в java, и у меня есть, наверное, очень простой вопрос для ответа.Проверка setSoTimeout для DatagramSocket() в Java

У меня есть DatagramSocket, и я установил setSoTimeout равным 2 секундам. Я знаю из библиотеки Java, что если получателю() выдается этот сокет и 2 секунды проходит, и он не получает ответа, возникает исключение (java.net.SocketTimeoutException). Теперь для меня, когда возникает это исключение, мой клиент закрывается. Мне нужно выяснить, произошло ли это исключение и перейти в другой раздел моего кода, а не закрыть весь клиент.

Заранее за вашу помощь.

ответ

0

Оберните линию, которая выбрасывает java.net.SocketTimeoutException с try/catch блок.

try { 
    socket.receive(p); 
} catch (SocketTimeoutException ste) { 
    ste.printStackTrace(); 
} 
+0

Вы можете быть более конкретным (например, можете ли вы написать код, на который вы ссылаетесь)? – user455019

Смежные вопросы