Python中命名的可重入/递归锁(RLock)
PythonPython中命名的可重入/递归锁(RLock),python,synchronization,locking,Python,Synchronization,Locking,Python多处理模块有一个可重入/递归锁类: 来自多处理导入RLock的 l=RLock() l、 获得 l、 获得 l、 释放() l、 释放() 这对于从公共父进程派生出来的进程非常有效,因此可以共享相同的RLock对象。但是,对于进程独立的情况(例如:web服务器+cron作业),需要一个名为的锁。不幸的是,RLock()不接受锁的名称参数。有没有一个解决方案可以让你这样做 l=RLock('mylock')) l、 获得 l、 释放() 查看oslo\u concurrency.lo
多处理模块有一个可重入/递归锁类:
来自多处理导入RLock的
l=RLock()
l、 获得
l、 获得
l、 释放()
l、 释放()
这对于从公共父进程派生出来的进程非常有效,因此可以共享相同的RLock
对象。但是,对于进程独立的情况(例如:web服务器+cron作业),需要一个名为的锁。不幸的是,RLock()
不接受锁的名称参数。有没有一个解决方案可以让你这样做
l=RLock('mylock'))
l、 获得
l、 释放()
查看oslo\u concurrency.lockutils
。它有一个lock
上下文管理器和一个synchronized
decorator,两者都有一个名称和其他方便的进程间友好参数。读了吗?读了。虽然它带来了一些清晰,但它没有回答这个问题。然而,我找到了图书馆。Semaphore
类可能就是我想要的。