使用互斥锁

#_author:来童星
#date:2019/12/17
#互斥锁
from threading import Thread,Lock
import time
n=100
def func():
global n
mutex.acquire()
temp=n
time.sleep(0.1)
n=temp-1
print('购买成功,剩余%d张电影票'%n)
mutex.release()

if __name__=='__main__':
mutex=Lock()
t_l=[]#
for i in range(10):
t=Thread(target=func)
t_l.append(t)
t.start()
for t in t_l:
t.join()
运行结果:
购买成功,剩余99张电影票
购买成功,剩余98张电影票
购买成功,剩余97张电影票
购买成功,剩余96张电影票
购买成功,剩余95张电影票
购买成功,剩余94张电影票
购买成功,剩余93张电影票
购买成功,剩余92张电影票
购买成功,剩余91张电影票
购买成功,剩余90张电影票
posted @ 2019-12-17 15:12  Stary_tx  阅读(249)  评论(0编辑  收藏  举报