94 taskQueue = multiprocessing.Queue() |
94 taskQueue = multiprocessing.Queue() |
95 doneQueue = multiprocessing.Queue() |
95 doneQueue = multiprocessing.Queue() |
96 |
96 |
97 # Submit tasks (initially two times the number of processes) |
97 # Submit tasks (initially two times the number of processes) |
98 tasks = len(argumentsList) |
98 tasks = len(argumentsList) |
99 initialTasks = 2 * NumberOfProcesses |
99 initialTasks = min(2 * NumberOfProcesses, tasks) |
100 for _ in range(initialTasks): |
100 for _ in range(initialTasks): |
101 taskQueue.put(argumentsList.pop(0)) |
101 taskQueue.put(argumentsList.pop(0)) |
102 |
102 |
103 # Start worker processes |
103 # Start worker processes |
104 workers = [ |
104 workers = [ |