Possible Duplicate:
How to set a timeout on blocking sockets in boost asio?impulso asio del tiempo de espera
He leído algunas de las entradas antes sobre el tiempo de espera, pero no lo entiendo.
Quiero un tiempo de espera definido para la conexión. el código de conexión se ve así:
try{
boost::asio::ip::tcp::resolver resolver(m_ioService);
boost::asio::ip::tcp::resolver::query query(link.get_host(), link.get_scheme());
boost::asio::ip::tcp::resolver::iterator endpoint_iterator = resolver.resolve(query);
boost::asio::ip::tcp::resolver::iterator end;
boost::system::error_code error = boost::asio::error::host_not_found;
while (error && endpoint_iterator != end)
{
m_socket.close();
m_socket.connect(*endpoint_iterator++, error);
}
}
También quiero un tiempo de espera de lectura.
Uso boost::asio::read_until(m_socket, response, "\r\n");
para leer el encabezado.
¿es posible establecer SIMPLE un tiempo de espera?
Lea [cómo establecer un tiempo de espera en el socket de bloqueo] (http://stackoverflow.com/questions/291871/how-to-set-a-timeout-on-blocking-sockets-in-boost-asio) parece que no hay una manera fácil. –