Thanx Robert, although in the link you send me i could not find the follow up, googling the mail subject easily returned me the complete mail exchange (two e-mails from the same guy). In those, he finds out that the callbacks might be called in an order different from the order of the requests made, hence data could get merged.

However, i feel that doesn't answer the question about the writes, since callbacks are called after the bytes are sent, so this 'out-of-order callback calls' will not have impact on the data sent. Or am i mistaken, and actually the async writes could be executed out of order and/or at the same time?

Thanks again and best wishes,

On Fri, Sep 4, 2009 at 10:36 AM, Robert Jones <robertgbjones@gmail.com> wrote:
2009/9/4 Matheus Araújo Aguiar <matheus.pit@gmail.com>

Dear list,

I have learned that one cannot make several async write requests, one after another, without waiting for the completion of each request, otherwise the bytes get merged and the messages will not make sense at the receiving side. I am correct assuming that, right?
My doubt is if the same happens to async read requests. Does one have to wait a read request completes before issuing another? Will the bytes get merged too, if one does not wait before making another read request?

Assuming things happen that way, one async request waiting for the completion of another earlier request, then one have serial I/O processing and if one wants to have things done in parallel, the simplest way would be having other(s) thread(s) reading and writting in the same I/O object. Is this correct?

I hope I have made my doubts clear enough, and if it is not clear please say it and i will try to be more objective.


See http://article.gmane.org/gmane.comp.lib.boost.user/50424

Regards.

_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users



--
Matheus Araújo Aguiar
Computer Scientist
matheus.pit@gmail.com