title: Is non-blocking Redis pubsub possible?
body: <p>I want to use redis' pubsub to transmit some messages, but don't want be blocked using <code>listen</code>, like the code below:</p>
  
  <pre><code>import redis
  rc = redis.Redis()
  
  ps = rc.pubsub()
  ps.subscribe(['foo', 'bar'])
  
  rc.publish('foo', 'hello world')
  
  for item in ps.listen():
      if item['type'] == 'message':
          print item['channel']
          print item['data']
  </code></pre>
  
  <p>The last <code>for</code> section will block. I just want to check if a given channel has data, how can I accomplish this? Is there a <code>check</code> like method?</p>