WELCOME来到ZP博客空间!

任何一个伟大的目标,都有一个微不足道的开始。

python线程加同步锁

 1 import threading
 2 import time
 3 num=100
 4 def addNum():
 5     global num #在每个线程中都获取这个全局变量
 6     r.acquire()#加锁
 7     temp=num
 8     time.sleep(0.000001)
 9     num=temp-1
10     r.release()#释放锁
11 
12 thread_list=[]
13 r=threading.Lock()#创建同步锁
14 for i in range(5):
15     t = threading.Thread(target=addNum)
16     t.start()
17     thread_list.append(t)
18 for t in thread_list:#等待所有线程执行完毕
19     t.join()
20 print('final num:',num)

 

posted @ 2020-04-29 11:15  飞进少年  阅读(277)  评论(0编辑  收藏  举报