title: Mono Async Request Execution
body: <p>Where and how does mono complete an asynchronous request? e.g. possibly by adding the callback to local thread pool, create a new thread to handle the callback etc?</p>
  
  <p>So far I have been unable to determine exactly how it completes the request.</p>
  
  <p>Edit to add example:</p>
  
  <pre><code>NetworkStream.BeginRead(byte[] buffer, int offset, int size, AsyncCallback callback, Object state)
  </code></pre>