MCPcopy
hub / github.com/HelloZeroNet/ZeroNet / removeWorker

Method removeWorker

src/Worker/WorkerManager.py:421–435  ·  view source on GitHub ↗
(self, worker)

Source from the content-addressed store, hash-verified

419
420 # Ends and remove a worker
421 def removeWorker(self, worker):
422 worker.running = False
423 if worker.key in self.workers:
424 del(self.workers[worker.key])
425 self.log.debug("Removed worker, workers: %s/%s" % (len(self.workers), self.getMaxWorkers()))
426 if len(self.workers) <= self.getMaxWorkers() / 3 and len(self.asked_peers) < 10:
427 optional_task = next((task for task in self.tasks if task["optional_hash_id"]), None)
428 if optional_task:
429 if len(self.workers) == 0:
430 self.startFindOptional(find_more=True)
431 else:
432 self.startFindOptional()
433 elif self.tasks and not self.workers and worker.task and len(worker.task["failed"]) < 20:
434 self.log.debug("Starting new workers... (tasks: %s)" % len(self.tasks))
435 self.startWorkers(reason="Removed worker")
436
437 # Tasks sorted by this
438 def getPriorityBoost(self, inner_path):

Callers 2

downloaderMethod · 0.80
stopMethod · 0.80

Calls 3

getMaxWorkersMethod · 0.95
startFindOptionalMethod · 0.95
startWorkersMethod · 0.95

Tested by

no test coverage detected