...one of the most highly
regarded and expertly designed C++ library projects in the
world. — Herb Sutter and Andrei
Construct and open a
template< typename ExecutionContext> basic_stream_socket( ExecutionContext & context, const protocol_type & protocol, typename constraint< is_convertible< ExecutionContext &, execution_context & >::value, defaulted_constraint >::type = defaulted_constraint());
This constructor creates and opens a stream socket. The socket needs to be connected or accepted before data can be sent or received on it.
An execution context which provides the I/O executor that the socket will use, by default, to dispatch handlers for any asynchronous operations performed on the socket.
An object specifying protocol parameters to be used.
Thrown on failure.