Один или несколько буферов, в которые будут поступать данные. Хотя объект буферов может быть скопирован по мере необходимости, право собственности на базовые блоки памяти сохраняется абонентом, который должен гарантировать, что они остаются действительными до тех пор, пока обработчик не будет вызван.
sender_endpoint
Объект конечной точки, который получает конечную точку удаленного отправителя дейтаграммы. Владение объектом sender_endpoint сохраняется абонентом, который должен гарантировать, что он действителен до тех пор, пока обработчик не будет вызван.
handler
Обработчик должен быть вызван, когда операция приема завершится. Копии будут сделаны из обработчика по мере необходимости. Функциональная подпись обработчика должна быть:
voidhandler(constboost::system::error_code&error,// Result of operation.std::size_tbytes_transferred// Number of bytes received.);
Независимо от того, выполняется ли асинхронная операция немедленно или нет, обработчик не будет вызываться из этой функции. Вызов обработчика будет выполнен способом, эквивалентным использованию boost::asio::io_service::post().
См. документацию buffer для информации о приеме в несколько буферов за один ход, и как использовать ее с массивами, нарастить::array или std::vector.
Статья basic_datagram_socket::async_receive_from (1 of 2 overloads) раздела Boost.Asio basic_datagram_socket::async_receive_from может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.