...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Perform an IO control command on the descriptor.
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 descriptor.
The IO control command to be performed on the descriptor.
Set to indicate what error occurred, if any.
Getting the number of bytes ready to read:
boost::asio::posix::stream_descriptor descriptor(io_service); ... boost::asio::posix::stream_descriptor::bytes_readable command; boost::system::error_code ec; descriptor.io_control(command, ec); if (ec) { // An error occurred. } std::size_t bytes_readable = command.get();