锁¶
-
class
redis.lock.
Lock
(redis, name, timeout=None, sleep=0.1, blocking=True, blocking_timeout=None, thread_local=True)[source]¶ 一个共享的、分布式的锁。使用 Redis 进行锁定允许锁在进程和/或机器之间共享。
解决死锁问题并确保多个客户端能够良好协作是用户的责任。
-
acquire
(blocking=None, blocking_timeout=None, token=None)[source]¶ 使用 Redis 持有一个名为
name
的共享的、分布式的锁。获取锁后返回 True。如果
blocking
为 False,则始终立即返回。如果锁已获取,则返回 True,否则返回 False。blocking_timeout
指定尝试获取锁的最大等待时间(秒)。token
指定要使用的令牌值。如果提供,令牌必须是字节对象或可以使用默认编码编码为字节对象的字符串。如果没有指定令牌,则会生成一个 UUID。
-