午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術(shù)文章
文章詳情頁

threadingtest - python threading中的lock rlock 為何rlock可以調(diào)用多次acquire

瀏覽:178日期:2022-08-08 17:13:56

問題描述

在python的多線程中,使用threading中的lock rlock鎖, 為何rlock可以調(diào)用多次acquire,lock缺不能,lock調(diào)用多次而且會(huì)發(fā)生死鎖,rlock不會(huì),求大神指點(diǎn)下

問題解答

回答1:

rlock是可重入鎖,你可以簡單的理解它自帶一個(gè)計(jì)數(shù)器,acquire則計(jì)數(shù)器+1,release則計(jì)數(shù)器-1.不可出現(xiàn)負(fù)值,否則會(huì)跑出異常。

為什么要這么做呢,因?yàn)閼?yīng)用場景不同,可重入鎖可以調(diào)用另外一個(gè)需要該鎖的方法,而不可重入鎖是不能這么做的。

def fun1(): rlock.acquire() fun2() rlock.release()def fun2(): rlock.acquire() rlock.release()回答2:

lock與rlock的差別在于r: reentrant,可重復(fù)進(jìn)入,一個(gè)線程可以多次獲取同一個(gè)rlock而不被block,一個(gè)線程如果多次獲取了rlock,那就要release相同的次數(shù)才可以釋放這個(gè)rlock。

lock則不一樣,只能被獲取一次,在被釋放之前,不能再被獲取。

更多的可以參考這個(gè)回答:http://stackoverflow.com/ques...

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久久在线精品视频 | 欧美美女一区二区 | 欧美性猛交xxxx乱大交少妇 | 午夜免费网址 | 亚洲在线视频观看 | 亚洲精品9| 一级大片视频 | 久久官网| 国产免费一区二区三区 | 欧美手机在线观看 | 99视频网站 | 国产在线视频导航 | 黄污网站在线观看 | 欧美一级特黄高清视频 | 综合网伊人 | 日韩亚洲欧美在线 | 精品免费在线观看 | 六月婷婷在线 | 亚洲欧美日韩综合 | 精品色综合 | 成人免费片 | 天天操天天弄 | 免费看成人片 | 欧美日韩视频免费观看 | 网爆门在线 | 超碰免费在线观看 | 午夜精品91 | 免费国产a | 亚洲一区和二区 | 成人欧美片 | 一级黄色片在线 | 最新不卡av | 亚洲tv在线 | 四虎四虎 | 久草网站在线观看 | 欧美片网站免费 | 亚洲第一av在线 | 国产成人精品免高潮在线观看 | 欧美一级做性受免费大片免费 | 浪漫樱花在线观看高清动漫 | 亚洲永久在线观看 |