##### basic_socket_acceptor::accept (2 of 16 overloads)

Accept a new connection.

    template<
        typename Protocol1,
        typename Executor1>
    void accept(
        basic_socket< Protocol1, Executor1 > & peer,
        asio::error_code & ec,
        constraint_t< is_convertible< Protocol, Protocol1 >::value >  = 0);

This function is used to accept a new connection from a peer into the given socket. The function call will block until a new connection has been accepted successfully or an error occurs.

###### Parameters

peer

  The socket into which the new connection will be accepted.

ec

  Set to indicate what error occurred, if any.

###### Example

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