Use faster and thread safe way to re-sort tasks

This commit is contained in:
shortcutme 2019-12-21 02:58:35 +01:00
parent 62d4edadf6
commit f119f7d0d2
No known key found for this signature in database
GPG key ID: 5B63BAE6CB9613AE

View file

@ -529,15 +529,15 @@ class WorkerManager(object):
return task return task
def addTaskWorker(self, task, worker): def addTaskWorker(self, task, worker):
if task in self.tasks: try:
self.tasks.updateItem(task, "workers_num", task["workers_num"] + 1) self.tasks.updateItem(task, "workers_num", task["workers_num"] + 1)
else: except ValueError:
task["workers_num"] += 1 task["workers_num"] += 1
def removeTaskWorker(self, task, worker): def removeTaskWorker(self, task, worker):
if task in self.tasks: try:
self.tasks.updateItem(task, "workers_num", task["workers_num"] - 1) self.tasks.updateItem(task, "workers_num", task["workers_num"] - 1)
else: except ValueError:
task["workers_num"] -= 1 task["workers_num"] -= 1
if len(task["failed"]) >= len(self.workers): if len(task["failed"]) >= len(self.workers):
fail_reason = "Too many fails: %s (workers: %s)" % (len(task["failed"]), len(self.workers)) fail_reason = "Too many fails: %s (workers: %s)" % (len(task["failed"]), len(self.workers))