process_count = 0
proc1 = subprocess.Popen(['python', 'mytest.py'])
thread.start_new_thread(process_waiter, (proc1, '1 finished', results))
process_count += 1
proc2 = subprocess.Popen(['python', 'mytest.py'])
thread.start_new_thread(process_waiter, (proc2, '2 finished', results))
process_count += 1
while process_count > 0:
    description, rc = results.get()
print('job', description, 'ended with rc =', rc)
process_count -= 1
Python on Windows - how to wait for multiple child processes?