在多进程或多线程的应用程序中,有时我们需要确保某个任务在同一时间只能由一个进程或线程来执行,以避免数据竞争和资源冲突的问题。这时可以使用分布式锁来实现这个目标。Redis是一个高性能的键值存储系统,它提供了一些原子操作和数据结构,可以用来实现分布式锁。
下面是使用Redis实现分布式锁的示例代码:
import redis
import time
class RedisLock:
def __init__(self, redis_conn, lock_key, acquire_timeout=