菜鸟笔记
提升您的技术认知

lock和rlock-ag真人游戏

lock.acquire([blocking])

获取一把锁,阻塞的或者非阻塞的。
当调用时blocking参数设置为true(默认值),将阻塞直至锁变成unblocked,然后设置它的状态为locked并返回true。
当调用时blocking参数设置为false,将不会阻塞。

lock.release()

释放一把锁。
当锁是locked时,重置它为unlocked,然后返回。如果存在其他阻塞的线程正在等待锁变成unblocked状态,只会允许它们中的一个继续。
在一把没有锁住的锁上调用时,引发一个threaderror 。

lock对象

threading.lock() 加载线程的锁对象,是一个基本的锁对象,一次只能一个锁定,其余锁请求,需等待锁释放后才能获取

rlock对象

一个可重入所示一个同步原语,它可以被相同的线程获得多次。 当线程在获得加锁之后,又需要共享资源,需要再次加锁。这时就可以使用rlock。
注意,acquire()和release()要成对出现,否则会报错

网站地图