Boost.Asio - Как отправить сообщение нескольким клиентам

Я просмотрел множество руководств по Boost.Asio, особенно это: Дневной TCP-сервер

После того, как сервер создает tcp_connection с клиентом, кажется, что связь между сервером и этим конкретным клиентом является только односторонней. Как я могу сделать так, чтобы сервер имел возможность ретранслировать клиентские сообщения всем подключенным клиентам? Или даже выбрать, каким клиентам отправлять сообщения.


person Joey Weidman    schedule 24.04.2017    source источник


Ответы (1)


TCP создает только соединение между сервером и конкретным клиентом. Вы можете использовать соединение UDP для передачи сообщения нескольким клиентам.

Как говорит JTejedor в комментариях, вы также можете создать сокет TCP для каждого клиента.

person baddger964    schedule 24.04.2017
comment
Вы можете использовать широковещательную рассылку UDP. Вот вопрос, связанный с тем, как создать UDP-трансляцию с помощью Boost UDP-трансляции. Но если вы предпочитаете использовать TCP, вам необходимо создать соединение с каждым клиентом и явно отправить любое сообщение каждому клиенту. - person JTejedor; 24.04.2017