LocalTurnLock
Defined in the protocols module.AI Agent Default in-process turn lock — today’s
asyncio.Lock behaviour.
Zero-cost, dependency-free implementation of :class:TurnLockProtocol for
single-replica / no-backend deployments. It serialises turns within one
process (per event loop) exactly as the existing LockMap does, so
upgrading is byte-for-byte backward compatible. It provides no cross-
process guarantee — selecting a distributed backend (e.g. redis) is what
extends serialisation across replicas.
The owner/ttl arguments are accepted for protocol symmetry but are
inert here: an in-process asyncio.Lock is released deterministically
when the holding task exits, so there is no crashed-holder lease to expire.
Methods
acquire()
Instance method.
release()
Instance method.
hold()
Instance method.
Source
View on GitHub
praisonaiagents/gateway/protocols.py at line 5435
