MCPcopy Index your code
hub / github.com/pyload/pyload / sync_get

Method sync_get

module/lib/beaker/util.py:109–120  ·  view source on GitHub ↗
(self, key, createfunc, *args, **kwargs)

Source from the content-addressed store, hash-verified

107 return self.sync_get(key, createfunc, *args, **kwargs)
108
109 def sync_get(self, key, createfunc, *args, **kwargs):
110 self.mutex.acquire()
111 try:
112 try:
113 if self.has_key(key):
114 return self.dict[key]
115 else:
116 return self._create(key, createfunc, *args, **kwargs)
117 except KeyError:
118 return self._create(key, createfunc, *args, **kwargs)
119 finally:
120 self.mutex.release()
121
122 def _create(self, key, createfunc, *args, **kwargs):
123 self[key] = obj = createfunc(*args, **kwargs)

Callers 2

getMethod · 0.95
_synchronizerFunction · 0.80

Calls 4

has_keyMethod · 0.95
_createMethod · 0.95
acquireMethod · 0.80
releaseMethod · 0.45

Tested by

no test coverage detected