(workers)
| 221 | |
| 222 | |
| 223 | def wait_for_free_worker(workers): |
| 224 | while True: |
| 225 | for idx, worker in enumerate(workers): |
| 226 | if worker is None: |
| 227 | logger.info('return free worker: %s' % (idx)) |
| 228 | return idx |
| 229 | if worker.poll() is None: # running, get output |
| 230 | for line in iter(worker.stdout.readline, ''): |
| 231 | if line != '': |
| 232 | sys.stdout.write(line) |
| 233 | else: |
| 234 | break |
| 235 | else: # worker process completed. |
| 236 | logger.info('Process end: %s' % (idx)) |
| 237 | workers[idx] = None |
| 238 | return idx |
| 239 | time.sleep(0.001) |
| 240 | |
| 241 | |
| 242 | def wait_for_workers(workers): |
no test coverage detected
searching dependent graphs…