asio C++ library

PrevUpHomeNext
basic_socket_acceptor::accept (15 of 16 overloads)

Accept a new connection.

template<
    typename Executor1>
Protocol::socket::template rebind_executor< Executor1 >::other accept(
    const executor_type & ex,
    endpoint_type & peer_endpoint,
    asio::error_code & ec,
    constraint_t< is_executor< Executor1 >::value||execution::is_executor< Executor1 >::value >  = 0);

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

This overload requires that the Protocol template parameter satisfy the AcceptableProtocol type requirements.

Parameters

ex

The I/O executor object to be used for the newly accepted socket.

peer_endpoint

An endpoint object into which the endpoint of the remote peer will be written.

ec

Set to indicate what error occurred, if any.

Return Value

On success, a socket object representing the newly accepted connection. On error, a socket object where is_open() is false.

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

PrevUpHomeNext