From bfc7e7c33f7c4fb793c95b27bb11b6ade47f65c5 Mon Sep 17 00:00:00 2001 From: shortcutme Date: Thu, 4 Apr 2019 13:27:21 +0200 Subject: [PATCH] Only start worker if there is valid task for it --- src/Worker/WorkerManager.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/Worker/WorkerManager.py b/src/Worker/WorkerManager.py index 9fef8217..c514fd25 100644 --- a/src/Worker/WorkerManager.py +++ b/src/Worker/WorkerManager.py @@ -157,12 +157,16 @@ class WorkerManager(object): key = "%s/%s" % (key, len(self.workers)) if key not in self.workers: # We dont have worker for that peer and workers num less than max - worker = Worker(self, peer) - self.workers[key] = worker - worker.key = key - worker.start() - return worker - else: # We have woker for this peer or its over the limit + task = self.getTask(peer) + if task: + worker = Worker(self, peer) + self.workers[key] = worker + worker.key = key + worker.start() + return worker + else: + return False + else: # We have worker for this peer or its over the limit return False def taskAddPeer(self, task, peer):