问题
Does boost::asio::io_service guarantee that handlers are called in the same order that they are given via post()? I can't find anything saying this in the documentation. Assume that calls to io_service::post
are serialized.
回答1:
The current implementation does execute things in the sequence you post them, but ordering is only guaranteed for handlers that are explicitly post()ed through a strand
.
回答2:
afaik if you want guaranteed ordering of post
handler execution you have to use strand
as described in the docs.
来源:https://stackoverflow.com/questions/6442812/does-boostasioio-service-preserve-the-order-of-handlers