python多线程同步
作者:vpoet
日期:大约在夏季
import threadingimport timemylock = threading.RLock() num=0class myThread(threading.Thread):def __init__(self, name):threading.Thread.__init__(self)self.t_name = namedef run(self):global numwhile True:mylock.acquire()print '\nThread(%s) locked, Number: %d'%(self.t_name, num)if num>=10:mylock.release()print 'num >=10 thread over!'breaknum+=1print '\nThread(%s) released, Number: %d'%(self.t_name, num)time.sleep(1)mylock.release()def test():thread1 = myThread('A')thread2 = myThread('B')thread1.start()thread2.start()if __name__== '__main__':test()
运行结果:
,但没有一个创造奇迹的人是依靠瞬间的。