##### basic_stream_socket::basic_stream_socket (3 of 10 overloads)

Construct and open a `basic_stream_socket`.

    basic_stream_socket(
        const executor_type & ex,
        const protocol_type & protocol);

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.

###### Parameters

ex

  The I/O executor that the socket will use, by default, to dispatch handlers for any asynchronous operations performed on the socket.

protocol

  An object specifying protocol parameters to be used.

###### Exceptions

asio::system_error

  Thrown on failure.