title: What is the impact of calling io_service::run method twice
body: <p>The following schema come from boost asio documentation:</p>
  
  <p><img src="https://i.stack.imgur.com/RCSmg.png" alt="enter image description here"></p>
  
  <p>I understand that if I call <code>io_service::run</code> method twice (in two separate threads), I will have two threads to deque events from the completion Event Queue via Asynchronous Event Demultiplexer am I right?</p>
  
  <p>More precisely, my doubt is on the parrallelization achieve by multiple call of <code>io_service::run</code> method. For instance when dealing with socket, if for example I have two sockets bound on the same <code>io_service object</code>, each socket calling <code>socket.async_read_some</code> method, does it involved the 2 registered callbacks (via async_read_some method) can be called concurently when calling  <code>io_service::run</code> twice.</p>