basic_raw_socket without opening
template< typename ExecutionContext> basic_raw_socket( ExecutionContext & context, typename constraint< is_convertible< ExecutionContext &, execution_context & >::value >::type = 0);
This constructor creates a raw socket without opening it. The
function must be called before data can be sent or received on the socket.
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.