gpt4 book ai didi

python - 如何锁定 django 命令以进行单次运行。 Django 。 Python

转载 作者:行者123 更新时间:2023-11-30 23:57:52 24 4
gpt4 key购买 nike

如何锁定 django 命令,使其不会同时运行两次?

最佳答案

在某处创建一个锁 - 我最近看到使用缓存的非常简单的锁实现:

LOCK_EXPIRE = 60 * 5

lock_id = "%s-lock-%s" % (self.name, id_hexdigest) #computed earlier

is_locked = lambda: str(cache.get(lock_id)) == "true"
acquire_lock = lambda: cache.set(lock_id, "true", LOCK_EXPIRE)
release_lock = lambda: cache.set(lock_id, "nil", 1)

if not is_locked():
aquire_lock()
try:
#do something
finally:
release_lock()

这只是众多可能的实现之一。

编辑:已更正,我只是不假思索地粘贴了代码。 try...finally block 用于确保无论发生什么情况,锁始终被释放 - 但当然 if 语句也是必要的。

关于python - 如何锁定 django 命令以进行单次运行。 Django 。 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3459631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com