tim_one at email.msn.com
Wed Jan 29 04:41:23 CET 2003
>> import threading
>> class Control(threading.Thread):
>> def run(self):
>> if __name__ == '__main__':
>> for comp in Computers:
>> thread = Control()
>> time.sleep(.005) # <-- This is what I still need to use
[James J. Besemer]
> Without the sleep (and even with it) your main thread can exit
> immediately after starting the "Control" threads.
> This can be before the threads finish and even before some or all
> of them actually really get started.
> There may be some implementations where the main thread waits for the
> other threads to finish but on some implementations, exiting the main
> thread definitely kills off the other threads whether they finish or
That's true of threads created by the thread module, but not of threads
created by the threading module (which Lukas is using): Python arranges for
the main thread to do (an implicit) t.join() on every thread t created by
the threading module before allowing the main thread to exit, except for
threads explicitly set to be daemon threads.
I didn't find the OP's original post clear enough to guess what the real
problem was. Knowing the Python version and OS would help.
More information about the Python-list