From d2f27644968624a1f5ebf4243b15656657a14a43 Mon Sep 17 00:00:00 2001 From: schneefux Date: Sun, 26 Feb 2017 20:06:43 +0100 Subject: support multiple threads per worker --- api.py | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) (limited to 'api.py') diff --git a/api.py b/api.py index 1da9e8d..42adacb 100644 --- a/api.py +++ b/api.py @@ -86,21 +86,24 @@ class Worker(object): logging.info("nothing to do, idling") await asyncio.sleep(10) + async def start(self, number=1): + """Start jobs in background.""" + for _ in range(number): + asyncio.ensure_future(self.run()) async def startup(): - for _ in range(1): - worker = Worker( - apitoken=os.environ["VAINSOCIAL_APITOKEN"] - ) - await worker.connect( - host=os.environ["POSTGRESQL_HOST"], - port=os.environ["POSTGRESQL_PORT"], - user=os.environ["POSTGRESQL_USER"], - password=os.environ["POSTGRESQL_PASSWORD"], - database=os.environ["POSTGRESQL_DB"] - ) - await worker.setup() - await worker.run() + worker = Worker( + apitoken=os.environ["VAINSOCIAL_APITOKEN"] + ) + await worker.connect( + host=os.environ["POSTGRESQL_HOST"], + port=os.environ["POSTGRESQL_PORT"], + user=os.environ["POSTGRESQL_USER"], + password=os.environ["POSTGRESQL_PASSWORD"], + database=os.environ["POSTGRESQL_DB"] + ) + await worker.setup() + await worker.start() logging.basicConfig(level=logging.DEBUG) loop = asyncio.get_event_loop() -- cgit v1.3.1