Skip to main content
 首页 » 编程设计

python之在 python (django) 中,如何在更新时停止访问全局字典数据结构

2024年09月03日30xxx_UU

在 Django 中更新全局字典数据结构时,我想通过不同的请求锁定对它的访问。我计划有一个包装函数来更新、访问和同步它。来自Java背景!任何指针?

请您参考如下方法:

稍微扩展 LockableDict 示例,使其更加健壮,您可以使用真正的 Lock:

class LockableDict(dict): 
    def __init__(self, *args, **kwargs): 
        from threading import Lock 
        self.lock = Lock() 
        dict.__init__(self, *args, **kwargs) 
 
    @property 
    def locked(self): 
        return self.lock.locked() 
 
    def lock(self): 
        self.lock.acquire() 
 
    def unlock(self): 
        self.lock.release() 
 
# and then 
my_dict = LockableDict({1:2, 3:4}) 
my_dict.lock() 
# do modifications 
my_dict.unlock()