Я использую boost :: asio для сетевого взаимодействия, и мне интересно, почему в примерах иногда используется socket.connect(endpoint)
а в некоторых других случаях используется boost::asio::connect(socket, endpoint)
. Согласно коду, boost::asio::connect
вызывает socket.connect
в цикле для итераторов конечных точек. Итак, мой вопрос:
Какое поведение лучше? Используя boost :: asio :: connect или socket.connect? Лично я предпочитаю socket.connect, потому что у меня есть только одна конечная точка. Или я ошибаюсь и неправильно понял asio libs.
Также мой второй вопрос: почему конечная точка является итератором? Как это возможно, более одного соединения, когда дается 1 IP и 1 порт?
Также есть boost :: asio :: write и socket.write...
Примеры:
- boost :: asio :: connect (сокет, конечная точка) blocking_tcp_echo_client.cpp.
- Socket.connect (конечная точка) (немного старше, но все еще работает) Daytime.1