title: Python Queue get()/task_done() issue
body: <p>My consumer side of the queue:</p>
  
  <pre><code>m = queue.get()
  queue.task_done()
  
  &lt;rest of the program&gt;
  </code></pre>
  
  <p>Questions:</p>
  
  <ol>
  <li><p>Does <code>task_done()</code> effectively pops <code>m</code> off the queue and release whatever locks the consumer has on the queue?</p></li>
  <li><p>I need to use <code>m</code> during the rest of the program. Is it safe, or do I need to copy it before I call <code>task_done()</code> or is <code>m</code> usable after <code>task_done()</code>?</p></li>
  </ol>
  
  <p>be happy</p>