def lock_createfunc(self, wait=True): if self.funclock is None: self.funclock = NameLock( identifier="memorycontainer/funclock/%s/%s" % (self.namespacemanager.namespace, self.key), reentrant=True) return self.funclock.acquire(wait)
class MemoryContainer(Container): def do_init(self, **kwargs): self.funclock = None def create_namespace(cls, namespace, **kwargs): return MemoryNamespaceManager(namespace, **kwargs) create_namespace = classmethod(create_namespace) def lock_createfunc(self, wait = True): if self.funclock is None: self.funclock = NameLock(identifier = "memorycontainer/funclock/%s/%s" % (self.namespacemanager.namespace, self.key), reentrant = True) return self.funclock.acquire(wait) def unlock_createfunc(self): self.funclock.release()
class MemoryContainer(Container): def do_init(self, **kwargs): self.funclock = None def create_namespace(cls, namespace, **kwargs): return MemoryNamespaceManager(namespace, **kwargs) create_namespace = classmethod(create_namespace) def lock_createfunc(self, wait=True): if self.funclock is None: self.funclock = NameLock( identifier="memorycontainer/funclock/%s/%s" % (self.namespacemanager.namespace, self.key), reentrant=True) return self.funclock.acquire(wait) def unlock_createfunc(self): self.funclock.release()
def get_creation_lock(self, key): return NameLock( identifier="memorycontainer/funclock/%s/%s" % (self.namespace, key), reentrant=True )
def lock_createfunc(self, wait = True): if self.funclock is None: self.funclock = NameLock(identifier = "memorycontainer/funclock/%s/%s" % (self.namespacemanager.namespace, self.key), reentrant = True) return self.funclock.acquire(wait)