How to check for threads being finished?

Steven D'Aprano steve+comp.lang.python at
Fri Jul 5 18:59:54 CEST 2013

I have a pool of worker threads, created like this:

threads = [MyThread(*args) for i in range(numthreads)]
for t in threads:

I then block until the threads are all done:

while any(t.isAlive() for t in threads):

Is that the right way to wait for the threads to be done? Should I stick 
a call to time.sleep() inside the while loop? If so, how long should I 
sleep? That's probably an unanswerable question, but some guidelines on 
choosing the sleep time will be appreciated.


More information about the Python-list mailing list