Нужен прерываемый способ прослушивания пакетов UDP в рабочем потоке

Я разрабатываю приложение Google Glass, которое должно прослушивать UDP-пакеты в рабочем потоке (интеграция с существующей системой, которая отправляет UDP-пакеты). Я ранее отправил вопрос (см.Вот) и получил ответ, в котором содержатся некоторые рекомендации о том, как это сделать. Используя подход из другого обсуждения, у меня будет рабочий поток, который заблокирован в DatagramSocket.receive ().

Дальнейшее чтение подсказывает мне, что мне нужно иметь возможность запускать / останавливать это по требованию. Так что это подводит меня к вопросу, который я публикую здесь. Как я могу сделать вышеупомянутое таким образом, чтобы иметь возможность прерывать (изящно) прослушивание UDP? Есть ли способ, которым я могу "красиво" попросить сокет прервать вызов receive () из другого потока?

Или есть другой способ прослушивания пакетов UDP прерывистым образом, чтобы я мог запускать / останавливать поток слушателя по мере необходимости в ответ на события устройства?

Ответы на вопрос(1)

Ваш ответ на вопрос