подключиться к «без подключения» boost::asio::ip::udp::socket

В последнее время я узнал о UDP-сокете, просматривая сеть, и на всех страницах, которые объясняли это, упоминалось, что UDP-сокеты «без соединения». Это, если я правильно понимаю, означает, что у одного нет «соединения» между двумя сокетами, а вместо этого он отправляет пакеты дейтаграмм в указанные конечные точки, не зная, прослушивает ли другой конец.

Затем я иду и начинаю читать boost::asio::ip::udp::socket docsи обнаруживаю, что там упоминается API, например:

  • async_connect: запуск асинхронного подключения .
  • async_receive: Начать асинхронный прием на подключенном сокете.
  • async_send: Начать асинхронную отправку на подключенном сокете.

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

  1. Я что-то упускаю
  2. Реализация asio делает что-то за кулисами для виртуализации соединения.
  3. Документация неверна.

В документах также есть небольшой сбой: когда вы открываете страницу для basic_datagram_socket::async_connect, пример создает экземпляры TCPсокетов. (вместо UDP).

Кто-нибудь, пожалуйста, просветите меня?

7
задан Peter Jankuliak 17 May 2012 в 22:01
поделиться