145 taskQueue = multiprocessing.Queue() |
145 taskQueue = multiprocessing.Queue() |
146 doneQueue = multiprocessing.Queue() |
146 doneQueue = multiprocessing.Queue() |
147 |
147 |
148 # Submit tasks (initially two times the number of processes) |
148 # Submit tasks (initially two times the number of processes) |
149 tasks = len(argumentsList) |
149 tasks = len(argumentsList) |
150 initialTasks = 2 * NumberOfProcesses |
150 initialTasks = min(2 * NumberOfProcesses, tasks) |
151 for _ in range(initialTasks): |
151 for _ in range(initialTasks): |
152 taskQueue.put(argumentsList.pop(0)) |
152 taskQueue.put(argumentsList.pop(0)) |
153 |
153 |
154 # Start worker processes |
154 # Start worker processes |
155 workers = [ |
155 workers = [ |