Я получаю исключение SocketException при попытке вызвать joinGroup (addr) в MulticastSocket. Это происходит только на машине Windows, которую мы установили для автоматического запуска нашего приложения при загрузке машины.MulticastSocket не отвечает после сбоя
Кажется, что исключение выбрасывается из-за того, что Windows не полностью завершила процесс запуска, и здесь есть исключение.
java.net.SocketException: error setting options
at java.net.PlainDatagramSocketImpl.join(Native Method)
at java.net.PlainDatagramSocketImpl.join(Unknown Source)
at java.net.MulticastSocket.joinGroup(Unknown Source)
При запуске нашего приложения, если мы будем ждать минуту, прежде чем пытаться присоединиться к группе, все работает отлично.
Таким образом, мы решили включить петлю повтора, чтобы она подключалась, как только сеть была доступна, которая, казалось, работала. После двух неудач, третья попытка присоединиться к группе работает.
Проблема заключается в том, что MulticastSocket не получает сообщений от группы, даже если она в порядке.
Я создаю новый MulticastSocket после каждого отказа и отбрасывая старый.
Почему отказ в присоединении к группе на одном MulticastSocket влияет на тот, который присоединился без каких-либо ошибок, и как я мог бы обойти это?