title: Python multiprocessing apply_async never returns result on Windows 7
body: <p>I am trying to follow a very simple multiprocessing example:</p>
  
  <pre><code>import multiprocessing as mp
  
  def cube(x):
      return x**3
  
  pool    = mp.Pool(processes=2)
  results = [pool.apply_async(cube, args=x) for x in range(1,7)]
  </code></pre>
  
  <p>However, on my windows machine, I am not able to get the result (on ubuntu 12.04LTS it runs perfectly).</p>
  
  <p>If I inspect <code>results</code>, I see the following:</p>
  
  <pre><code>[&lt;multiprocessing.pool.ApplyResult object at 0x01FF0910&gt;,
   &lt;multiprocessing.pool.ApplyResult object at 0x01FF0950&gt;,
   &lt;multiprocessing.pool.ApplyResult object at 0x01FF0990&gt;,
   &lt;multiprocessing.pool.ApplyResult object at 0x01FF09D0&gt;,
   &lt;multiprocessing.pool.ApplyResult object at 0x01FF0A10&gt;,
   &lt;multiprocessing.pool.ApplyResult object at 0x01FF0A50&gt;]
  </code></pre>
  
  <p>If I run <code>results[0].ready()</code> I always get <code>False</code>.</p>
  
  <p>If I run <code>results[0].get()</code> the python interpreter freezes, waiting to get the result that never comes.</p>
  
  <p>The example is as simple as it gets, so I am thinking this is a low level bug relating to the OS (I am on Windows 7). But perhaps someone else has a better idea?</p>