Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
basic_socket_acceptor::accept (8 of 12 overloads)

Accept a new connection.

Protocol::socket accept(
    boost::asio::io_context & io_context,
    boost::system::error_code & ec);

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.



The io_context object to be used for the newly accepted socket.


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.

boost::asio::ip::tcp::acceptor acceptor(io_context);
boost::asio::ip::tcp::socket socket(acceptor.accept(io_context2, ec));
if (ec)
  // An error occurred.