##### basic_socket::open (2 of 2 overloads)

Open the socket using the specified protocol.

    void open(
        const protocol_type & protocol,
        asio::error_code & ec);

This function opens the socket so that it will use the specified protocol.

###### Parameters

protocol

  An object specifying which protocol is to be used.

ec

  Set to indicate what error occurred, if any.

###### Example

    asio::ip::tcp::socket socket(my_context);
    asio::error_code ec;
    socket.open(asio::ip::tcp::v4(), ec);
    if (ec)
    {
      // An error occurred.
    }