Ostatnio uczyłem się o gnieździe UDP, przeglądając sieć i wszystkie strony, które wyjaśniały, wspomniały, że gniazda UDP są " połączenie mniej ". To, jeśli rozumiem to poprawnie, oznacza, że nie ma "połączenia" między dwoma gniazdami, ale zamiast tego strzela pakiety datagramowe do określonych punktów końcowych, nie wiedząc, czy drugi koniec nasłuchuje.connect na "connection less" boost :: asio :: ip :: udp :: socket
Potem idę i rozpocząć czytanie boost :: asio :: ip :: udp :: gniazdo docs i uważają, że wspomina API jak:
- async_connect: Start asynchroniczny połączyć.
- async_receive: Uruchom asynchroniczny odbiór na podłączonym gnieździe .
- async_send: Rozpocznij asynchroniczne wysyłanie na podłączonym gnieździe .
Jest to nieco mylące dla nowicjuszy. mogę znaleźć 3 możliwe przyczyny mojego zamieszania (w kolejności likehood :))
- ja czegoś brakuje
- asio realizacja robi coś za kulisami do wirtualizacji połączenie.
- Dokumentacja jest źle
Istnieje również niewielkie usterki w docs, gdy otworzysz stronę dla basic_datagram_socket::async_connect przykładzie tam jest uruchamianiu TCP gniazda (zamiast UDP z nich).
Czy ktoś mógłby mnie oświecić?
+1 i jeśli nie było to oczywiste, jest to pomyłka nr 1 w pierwotnym pytaniu. –