From d371717e04e116ed140698195c2d1f089c09b65f Mon Sep 17 00:00:00 2001 From: Michaƫl Ball Date: Sat, 19 Aug 2017 11:18:09 +0100 Subject: Better way of running library watcher --- app.py | 14 +++++++++++--- watcher.py | 3 --- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/app.py b/app.py index ebf0d83..6d604a3 100644 --- a/app.py +++ b/app.py @@ -15,10 +15,18 @@ APP = create_app() if __name__ == "__main__": config = configparser.ConfigParser() config.read("mach2.ini") - watcher = spawn(LibraryWatcher, config.get("DEFAULT", "media_dir"), - config.get("DEFAULT", "library")) http_server = WSGIServer(('', 5000), APP, log=None) server = spawn(http_server.serve_forever) - joinall([watcher, server]) + watcher = LibraryWatcher(config.get("DEFAULT", "media_dir"), + config.get("DEFAULT", "library")) + + def check_for_events(): + """Check for changes in the library.""" + while True: + watcher.check_for_events() + + watcher_routine = spawn(check_for_events) + + joinall([watcher_routine, server]) diff --git a/watcher.py b/watcher.py index ffb4a42..353636a 100644 --- a/watcher.py +++ b/watcher.py @@ -126,9 +126,6 @@ class LibraryWatcher(object): register(self.stop) - while True: - self.check_for_events() - def stop(self): """Remove all the watched paths.""" if self.wdd[self.path] > 0: -- cgit v1.2.3