Как изменить порт работающего Boost :: ASIO сокета udp - PullRequest
0 голосов
/ 04 июня 2019

Библиотека Boost ASIO предоставляет метод port() get / set для сокета local_endpoint, но когда я пытаюсь переключиться на другой порт во время работы рабочей очереди, вызов socket.local_endpoint().port(1234) call не меняет порт , У кого-нибудь есть опыт с этим?

В зависимости от опции, полученной через TFTP, мне нужно переключить порт, через который сервер и клиент обмениваются данными.

1 Ответ

0 голосов
/ 24 июня 2019

Чтобы ответить, почему

вызов socket.local_endpoint (). Port (1234) не меняет порт.

Насколько я знаю, * 1007Реализации * class *_endpoint() возвращают копию объекта endpoint_type, а не ссылку, поэтому изменение, которое вы пытаетесь внести, не повлияет на объект socket.

...