品易云推流 关闭
文章详情页
文章 > Python基础教程 > python多线程中锁怎么使用?

python多线程中锁怎么使用?

头像

十一

2020-11-17 15:58:292313浏览 · 0收藏 · 0评论

可能有小伙伴不清楚这些内容,因为确实是不怎么去使用,但是还是为了大家格挡全面的认知学习python,小编折腾了很久,帮助大家在多线程里的锁内容,做了细致的梳理,需要掌握或者直接能够快速上手的内容,压缩了很多,因此,内容不多,非常适合大家有直接需求的观看,那就抓紧往下看吧~

互斥Lock与递归锁RLock

锁的使用

# 锁
import time
from threading import Thread
from threading import Lock
 
def func():
    global n
    lock.acquire()
    temp = n  # 从进程中获取n
    time.sleep(0.01)
    n = temp-1  # 得到结果再存储回进程
    lock.release()
n = 100
lock = Lock()
t_lis = []
for i in range(100):
    t = Thread(target=func)
    t.start()
    t_lis.append(t)
[t.join() for t in t_lis]
print(n)

在多线程中,特殊情况,仍要加锁,对数据加锁。

内容不多,但是非常好用哦~几行代码就给大家清楚解释了关于多线程中的锁内容,对了,多线程里还有特别常见的递归锁,大家可以在教程中心搜索查看哦~

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图