diff options
author | Vishvananda Ishaya <vishvananda@gmail.com> | 2010-07-26 12:49:21 -0700 |
---|---|---|
committer | Vishvananda Ishaya <vishvananda@gmail.com> | 2010-07-26 12:49:21 -0700 |
commit | 5c3d352cee5003395d078dcfe01e8f4743027074 (patch) | |
tree | ebd8fc7447e2bdd320d22117ed6fe75c37749268 /nova/process.py | |
parent | 1a53eaeed901f3c789ebdb867b73996ccac608c3 (diff) | |
download | nova-5c3d352cee5003395d078dcfe01e8f4743027074.tar.gz nova-5c3d352cee5003395d078dcfe01e8f4743027074.tar.xz nova-5c3d352cee5003395d078dcfe01e8f4743027074.zip |
class based singleton for SharedPool
Diffstat (limited to 'nova/process.py')
-rw-r--r-- | nova/process.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/nova/process.py b/nova/process.py index 8ecef1584..2dc56372f 100644 --- a/nova/process.py +++ b/nova/process.py @@ -205,12 +205,13 @@ class ProcessPool(object): self._pool.release() return rv -_instance = None -def SharedPool(): - global _instance - if _instance is None: - _instance = ProcessPool() - return _instance +class SharedPool(object): + _instance = None + def __init__(self): + if SharedPool._instance is None: + self.__class__._instance = ProcessPool() + def __getattr__(self, key): + return getattr(self._instance, key) def simple_execute(cmd, **kwargs): return SharedPool().simple_execute(cmd, **kwargs) |