summaryrefslogtreecommitdiffstats
path: root/nova/process.py
diff options
context:
space:
mode:
authorVishvananda Ishaya <vishvananda@gmail.com>2010-07-26 12:49:21 -0700
committerVishvananda Ishaya <vishvananda@gmail.com>2010-07-26 12:49:21 -0700
commit5c3d352cee5003395d078dcfe01e8f4743027074 (patch)
treeebd8fc7447e2bdd320d22117ed6fe75c37749268 /nova/process.py
parent1a53eaeed901f3c789ebdb867b73996ccac608c3 (diff)
downloadnova-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.py13
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)