From 226b290ac22abcde92f52d5ace94c219834d4f98 Mon Sep 17 00:00:00 2001 From: Keith Ainsworth Date: Tue, 17 May 2016 14:16:01 -0700 Subject: [PATCH] add daemon option to PubSubWorker so ctrl-c will work --- redis/client.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/redis/client.py b/redis/client.py index 5f86b1d09a..8ac8b9bf3e 100755 --- a/redis/client.py +++ b/redis/client.py @@ -2362,7 +2362,7 @@ def handle_message(self, response, ignore_subscribe_messages=False): return message - def run_in_thread(self, sleep_time=0): + def run_in_thread(self, sleep_time=0, daemon=False): for channel, handler in iteritems(self.channels): if handler is None: raise PubSubError("Channel: '%s' has no handler registered") @@ -2370,14 +2370,15 @@ def run_in_thread(self, sleep_time=0): if handler is None: raise PubSubError("Pattern: '%s' has no handler registered") - thread = PubSubWorkerThread(self, sleep_time) + thread = PubSubWorkerThread(self, sleep_time, daemon=daemon) thread.start() return thread class PubSubWorkerThread(threading.Thread): - def __init__(self, pubsub, sleep_time): + def __init__(self, pubsub, sleep_time, daemon=False): super(PubSubWorkerThread, self).__init__() + self.daemon = daemon self.pubsub = pubsub self.sleep_time = sleep_time self._running = False