Uses simple shared global data to know when threads are done in parent/main thread : Thread Synchronize « Thread « Python






Uses simple shared global data to know when threads are done in parent/main thread

Uses simple shared global data to know when threads are done in parent/main thread
import thread

def counter(myId, count):
    for i in range(count): 
        stdoutmutex.acquire()
        print '[%s] => %s' % (myId, i)
        stdoutmutex.release()
    exitmutexes[myId] = 1  # signal main thread

stdoutmutex = thread.allocate_lock()
exitmutexes = []
for i in range(10):
    exitmutexes.append(0)
    thread.start_new(counter, (i, 100))

while 0 in exitmutexes: pass
print 'Main thread exiting.'


           
       








Related examples in the same category

1.Synchronize stdout access to avoid multiple prints on 1 lineSynchronize stdout access to avoid multiple prints on 1 line
2.Serialized by the mutex lockSerialized by the mutex lock