我需要使用命名锁(例如文件锁)同步 python 线程和进程(不需要相互关联)。最好它应该是读写器锁。我已经尝试过 fcntl.flock (它具有独占锁和共享锁获取),但它没有提供所需的锁定级别 - python 的 fcntl.flock 函数是否提供文件访问的线程级锁定?
到目前为止,我的解决方案是将lockfile与 memcached(或 mmap'ed 锁定文件)一起使用。Lockfile 将同步访问,memcached 将计算读取器/写入器。
有没有更好/更快的解决方案?你知道任何已经解决这个问题的项目吗?