title: How to cancel an asynchronous call?
body: <p>How to cancel an asynchronous call? The .NET APM doesn't seem to support this operation.</p>
  
  <p>I have the following loop in my code which spawns multiple threads on the ThreadPool. When I click a button on my UI, I would like these threads (or asynchronous calls) to end.</p>
  
  <pre><code>foreach (var sku in skus)
  {
      loadSku.BeginInvoke(...
  }
  </code></pre>
  
  <p>Is there any elegant solution other than creating a global "Cancel flag" and having the asynchronous methods to look for it?</p>