title: How to safely close a pika BlockingConnection subscriber?
body: <p>According to the docs <a href="https://pika.readthedocs.io/en/stable/faq.html" rel="nofollow noreferrer">Pika is not thread safe</a>:</p>
  <blockquote>
  <p>Pika does not have any notion of threading in the code. If you want to use Pika with threading, make sure you have a Pika connection per thread, created in that thread. It is not safe to share one Pika connection across threads, with one exception: you may call the connection method add_callback_threadsafe from another thread to schedule a callback within an active pika connection.</p>
  </blockquote>
  <p>Lets say I have a subscriber which I have started using <a href="https://www.rabbitmq.com/tutorials/tutorial-three-python.html" rel="nofollow noreferrer"><code>channel.start_consuming()</code></a>.  That thread will be blocked waiting for messages to arrive.  These messages might be a long time apart (hours sometimes).</p>
  <p>Surely if I want to safely / cleanly shutdown the subscriber, I must do-so from another thread?  Or else how can I trigger the consumer to break out of blocking?</p>