--- a/VultureChecker/VultureCheckerService.py Sun Jun 27 12:46:48 2021 +0200 +++ b/VultureChecker/VultureCheckerService.py Mon Sep 27 15:32:56 2021 +0200 @@ -81,9 +81,13 @@ taskQueue.put(task) # Start worker processes - for _ in range(NumberOfProcesses): - multiprocessing.Process(target=worker, - args=(taskQueue, doneQueue)).start() + workers = [ + multiprocessing.Process( + target=workerTask, args=(taskQueue, doneQueue) + ) for _ in range(NumberOfProcesses) + ] + for worker in workers: + worker.start() # Get and send results endIndex = len(argumentsList) - initialTasks @@ -113,9 +117,13 @@ # Tell child processes to stop for _ in range(NumberOfProcesses): taskQueue.put('STOP') + + for worker in workers: + worker.join() + worker.close() -def worker(inputQueue, outputQueue): +def workerTask(inputQueue, outputQueue): """ Module function acting as the parallel worker for the vulture check.