Наследуется от basic_socket.
Запуск асинхронного соединения.
template<
typename ConnectHandler>
void-or-deduced async_connect(
const endpoint_type & peer_endpoint,
ConnectHandler handler);
Эта функция используется для асинхронного подключения гнезда к указанной удаленной конечной точке. Звонок функции всегда возвращается немедленно.
Разъем автоматически открывается, если он еще не открыт. Если соединение выходит из строя, и розетка была автоматически открыта, розетка не возвращается в закрытое состояние.
- peer_endpoint
Удаленная конечная точка, к которой будет подключена розетка. Копии будут сделаны из конечного объекта по мере необходимости.
- handler
-
Обработчик должен быть вызван, когда операция соединения завершится. Копии будут сделаны из обработчика по мере необходимости. Функциональная подпись обработчика должна быть:
void handler(
const boost::system::error_code& error
);
Независимо от того, выполняется ли асинхронная операция немедленно или нет, обработчик не будет вызываться из этой функции. Привлечение обработчика будет выполнено способом, эквивалентным использованию<boost::asio::io_service::post()
>.
void connect_handler(const boost::system::error_code& error)
{
if (!error)
{
}
}
...
boost::asio::ip::tcp::socket socket(io_service);
boost::asio::ip::tcp::endpoint endpoint(
boost::asio::ip::address::from_string("1.2.3.4"), 12345);
socket.async_connect(endpoint, connect_handler);