...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Receive raw data with the endpoint of the sender.
template< typename MutableBufferSequence> std::size_t receive_from( const MutableBufferSequence & buffers, endpoint_type & sender_endpoint);
This function is used to receive raw data. The function call will block until data has been received successfully or an error occurs.
One or more buffers into which the data will be received.
An endpoint object that receives the endpoint of the remote sender of the data.
The number of bytes received.
Thrown on failure.
To receive into a single data buffer use the buffer function as follows:
boost::asio::ip::udp::endpoint sender_endpoint; socket.receive_from( boost::asio::buffer(data, size), sender_endpoint);
See the buffer documentation for information on receiving into multiple buffers in one go, and how to use it with arrays, boost::array or std::vector.