Mega Code Archive

 
Categories / Python Tutorial / Thread
 

Using thread and Locks

import thread from time import sleep, ctime loops = [4,2] def loop(nloop, nsec, lock):     print 'start loop', nloop, 'at:', ctime()     sleep(nsec)     print 'loop', nloop, 'done at:', ctime()     lock.release() print 'starting at:', ctime() locks = [] nloops = range(len(loops)) for i in nloops:     lock = thread.allocate_lock()     lock.acquire()     locks.append(lock) for i in nloops:     thread.start_new_thread(loop,         (i, loops[i], locks[i])) for i in nloops:     while locks[i].locked(): pass print 'all DONE at:', ctime()