feat: stop redis listener when stopping
This commit is contained in:
10
worker.py
10
worker.py
@@ -30,6 +30,9 @@ class EventListener(Thread):
|
||||
except ValueError:
|
||||
pass # todo
|
||||
|
||||
def stop(self):
|
||||
self.pubsub.close()
|
||||
|
||||
def handle_message(self, channel: str, data: bytes):
|
||||
data_dict = json.loads(data.decode())
|
||||
if channel == 'move':
|
||||
@@ -45,7 +48,6 @@ camera = Camera()
|
||||
walle = WallE()
|
||||
walle.setup()
|
||||
|
||||
|
||||
def walle_tick():
|
||||
scheduler.enter(INTERVAL_TICK, 1, walle_tick)
|
||||
walle.tick()
|
||||
@@ -64,4 +66,8 @@ if __name__ == '__main__':
|
||||
redisdb = Redis()
|
||||
event_listener = EventListener()
|
||||
event_listener.start()
|
||||
scheduler.run()
|
||||
try:
|
||||
scheduler.run()
|
||||
except KeyboardInterrupt:
|
||||
event_listener.stop()
|
||||
raise
|
||||
|
||||
Reference in New Issue
Block a user