Writing to a TCP socket asynchronously
Asynchronous writing is a flexible and efficient way to send data to a remote application. In this recipe, we will see how to write data to a TCP socket asynchronously.
How to do it…
The most basic tool used to asynchronously write data to the socket provided by the Boost.Asio library is the async_write_some()
method of the asio::ip::tcp::socket
class. Let's take a look at one of the method's overloads:
template< typename ConstBufferSequence, typename WriteHandler> void async_write_some( const ConstBufferSequence & buffers, WriteHandler handler);
This method initiates the write operation and returns immediately. It accepts an object that represents a buffer that contains the data to be written to the socket as its first argument. The second argument is a callback, which will be called by Boost.Asio when an initiated operation is completed. This argument can be a function pointer, functor, or any other object that...