测试是否在python中获取了锁

2024-10-01 13:29:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有python2.7.3。我试图使用Lock对象一次只允许运行脚本的一个实例。 我正在使用:

from mutiprocessing import Lock
lock = Lock()
if lock.locked() == False:
    lock.acquire()
    lock.release()

正如我所见here 但我得到了一个错误:

^{pr2}$

Tags: 对象实例fromimport脚本falselockrelease
1条回答
网友
1楼 · 发布于 2024-10-01 13:29:54

没有locked方法-有很好的理由。在

if lock.locked():
    lock.acquire()
    lock.release()

如果您执行这样的代码,那么锁的状态可以在If条件的测试和acquire之间发生变化。在

^{} allows non-blocking operation

^{pr2}$

这将只执行if内的代码,如果没有其他东西持有锁-否则,它将完全跳过执行。在

相关问题 更多 >