首页 > 其他 > 详细

rlock递归锁

时间:2018-11-18 15:37:43      阅读:135      评论:0      收藏:0      [点我收藏+]

import threading, time


def run1():
print("grab the first part data")
lock.acquire()
global num
num += 1
lock.release()
return num


def run2():
print("grab the second part data")
lock.acquire()
global num2
num2 += 1
lock.release()
return num2


def run3():
lock.acquire()
res = run1()
print(‘--------between run1 and run2-----‘)
res2 = run2()
lock.release()
print(res, res2)




num, num2 = 0, 0
lock = threading.RLock()
for i in range(1):
t = threading.Thread(target=run3)
t.start()

while threading.active_count() != 1:
print(threading.active_count())
else:
print(‘----all threads done---‘)
print(num, num2)

rlock递归锁

原文:https://www.cnblogs.com/rongye/p/9977959.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!