gpt4 book ai didi

python - 关于Python线程Lock对象

转载 作者:行者123 更新时间:2023-12-01 02:22:00 25 4
gpt4 key购买 nike

我正在阅读Python Threading Lock API。
Link here

我想知道下面的陈述是什么意思。

“当状态被锁定时,acquire()会阻塞,直到另一个线程中对release()的调用将其更改为解锁状态,然后acquire()调用将其重置为锁定状态并返回。”

这句话我已经读了100遍了。还是拿不到。

为什么要解锁另一个线程?“然后”后面的语句是什么意思?

对此有什么好的解释吗?

最佳答案

总体意思是,当一个线程获取锁时,其他调用acquire的线程会等待,直到锁被释放,然后再次加锁:

When the state is locked,

线程A acquire() 锁

acquire() blocks

线程B尝试acquire()锁,但它已被锁定,因此acquire()阻塞当前线程

until a call to release() in another thread changes it to unlocked

直到锁在其他地方被释放(即,它等待直到线程 A release() 锁)

then the acquire() call resets it to locked and returns.

线程B的acquire()再次加锁

关于python - 关于Python线程Lock对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47867835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com