2012-01-18 19 views
7

¿Hay alguna ventaja en términos del tiempo que tarda en llegar búfer fuera de los datos sobre el alambre si utilizaimpulso :: :: asio async_write() frente impulso :: asio :: write()

boost::asio::write(m_socket, asio::buffer(dataOut_, len), asio::transfer_all()); 

en lugar de

boost::asio::async_write(m_socket, boost::asio::buffer(hbs, sizeof(hbs)), 
         boost::bind(&Client::handle_pulse, this, 
         boost::asio::placeholders::error, 
         boost::asio::placeholders::bytes_transferred)); 

Respuesta

2

la gran diferencia es que el normal de write puede bloquear hasta que todo está escrito, mientras que async_write vuelve inmediatamente y pide una devolución de llamada cuando o bien todos los datos se escriben o se produce un error.

Dudo que haya una diferencia notable en el tiempo de la llamada a los datos que realmente se envían a través del cable.

+0

Gracias, es un alivio saberlo. –

Cuestiones relacionadas