Как установить опцию повторного использования адреса для сокета дейтаграммы в java-коде?

В моем приложении всегда будет один поток, который будет отправлять или прослушивать какой-либо порт.

Это приложение работает в фоновом режиме. Иногда при создании сокета я обнаруживал, что порт, который раньше использовался тем же потоком, не освобождается при close () сокета. Итак, я попробовал вот так

        dc = new DatagramSocket(inetAddr);
        dc.setReuseAddress(true);  

Проблема в том, что он также не достигает второй строки. в самой первой строке я получаю исключение BindException: адрес уже используется .

Кто-нибудь, пожалуйста, помогите мне, как справиться с этой ситуацией.

Есть ли способ освободить порт?

С уважением,
SSuman185

7
задан Suman 20 October 2011 в 07:31
поделиться