title: Does multiprocessing.Queue work with gevent?
body: <p>Anyone know what is wrong with this code? It simply "loads" forever. No output. "Sites" is a list of a few dozen strings.</p>
  
  <pre><code>num_worker_threads = 30
  
  def mwRegisterWorker():
      while True:
          try:
              print q.get()
          finally:
              pass
  
  q = multiprocessing.JoinableQueue()
  for i in range(num_worker_threads):
       gevent.spawn(mwRegisterWorker)
  
  for site in sites:
      q.put(site)
  
  q.join()  # block until all tasks are done
  </code></pre>