Hello,
My app writes out a large amount of data to a socket, in a loop, in
pieces, say 8kb at a time.
I'd like to switch from using Socket::send to use asio::async_write. At
a high level, what do I need to do? From my reading, I think I need to:
1. Call async_write instead of send
2. Ensure that my buffers have the correct lifetime
- today since my writes are synchronous I re-use the same buffer over
and over again
- so instead, should I make a new buffer for each write? Whats a good
way to ensure the buffer has the correct lifetime, e.g. how do I delete
it once its been written out?
3. I understand I can't call async_write again before the first one has
been completed (since I don't want my 8kb chunks interleaved), so should
I maintain a queue of buffers waiting to go out?
Then in my handle_write method should I check the queue, if at least one
buffer is in the queue then I should start a new async_write?
Thanks!
- Alex
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users