Oops, you probably want to do this then- for i in range( 0, 3 ): oThread = Thread( target=mainFunction ).start()
while oThread: print 'sleeping 3 seconds' time.sleep( 3 ) A if <condition> generally has an implicit else: pass clause as I think of it, so it will just keep reiterating if the condition isn't met. To see what I mean try - for i in range(5): #The 0 is default starting for range function if i==15: print 'fifteen' print i You'll, of course, get 0 1 2 3 4 It won't wait until i equals 15. on the other hand - for i in range(5): while i != 15: print "nope" print i You'll get a runaway while, and 'nope' will cascade down your stream, and you'll have great trouble closing Python. But i will never get printed, as it will still be waiting for i to equal fifteen. On Tue, 15 Feb 2005 21:54:04 -0500, Bernard Lebel <[EMAIL PROTECTED]> wrote: > That is an attempt to catch the death of the thread. I guess I'm not > taking the right steps ;-) > > > Bernard > > > Liam Clarke wrote: > > I'm sorry, but when does oThread get the value 1? > > > > If you're testing for it's existence via a True/False thing, try > > > > if oThread: > > > > But otherwise, I'm not sure what you're expecting to get. > > > > > > On Tue, 15 Feb 2005 20:58:15 -0500, Bernard Lebel > > <[EMAIL PROTECTED]> wrote: > > > >>Hello, > >> > >>I have already messed a little with simple thread programming, wich took > >>this form: > >> > >>from threading import Thread > >> > >>def mainFunction(): > >> pass > >> > >>Thread( target=mainFunction ).start() > >> > >>Now, I have a list of "jobs", each job being a windows bat file that > >>launches an executable and performs a rendering task. So I have this > >>queue of jobs, and would like to launch one only when the previous one > >>has finished, and in a separate window. So far I have not been having > >>much success with simple stuff: > >> > >>from threading import Thread > >> > >>def mainFunction(): > >> print 'function print' > >> return 1 > >> > >>for i in range( 0, 3 ): > >> oThread = Thread( target=mainFunction ).start() > >> > >> if oThread == 1: > >> print 'sleeping 3 seconds' > >> time.sleep( 3 ) > >> > >>In this example, 'sleeping 3 seconds' not returned, and each thread is > >>started without any waiting. > >> > >>I'm looking at the various threading module details in the library but I > >>have to admit that, well, I'm a bit at loss here. > >> > >>Thanks in advance > >>Bernard > > _______________________________________________ > Tutor maillist - Tutor@python.org > http://mail.python.org/mailman/listinfo/tutor > -- 'There is only one basic human right, and that is to do as you damn well please. And with it comes the only basic human duty, to take the consequences. _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor