title: How do I run task like `object = ClassA.GetObject()` in a separate thread using BackgroundWorker?
body: <p>I'm trying to make this line to work with <code>BackgroundWorker</code>:</p>
  
  <pre><code>map = Map.LoadMap(mapname);
  </code></pre>
  
  <p>…like this:</p>
  
  <pre><code>bw.DoWork += (map = Map.LoadMap(mapname));
  </code></pre>
  
  <p>It causes the error <code>Cannot implicitly convert type 'game.Map' to 'System.ComponentModel.DoWorkEventHandler'</code>.</p>
  
  <p>I just started using <code>BackgroundWorker</code> as threading component for my game, but it doesn't look like it will be easy to convert all existing methods to work with it. Is there a simple way to make this work or is it better to switch to some other threading mechanism?</p>
  
  <p>Note: from the threading base I need to be able to poll for progress percentage and not messing up my existing method calls.</p>