Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext
basic_stream_socket::io_control (2 of 2 overloads)

Inherited from basic_socket.

Perform an IO control command on the socket.

template<
    typename IoControlCommand>
boost::system::error_code io_control(
    IoControlCommand & command,
    boost::system::error_code & ec);

This function is used to execute an IO control command on the socket.

Parameters

command

The IO control command to be performed on the socket.

ec

Set to indicate what error occurred, if any.

Example

Getting the number of bytes ready to read:

boost::asio::ip::tcp::socket socket(io_service);
...
boost::asio::ip::tcp::socket::bytes_readable command;
boost::system::error_code ec;
socket.io_control(command, ec);
if (ec)
{
  // An error occurred.
}
std::size_t bytes_readable = command.get();

PrevUpHomeNext