diff options
| author | Jenkins <jenkins@review.openstack.org> | 2013-07-16 15:17:49 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2013-07-16 15:17:49 +0000 |
| commit | c935d1cba2a5716b71930ae2b4acd9fbeca4abdc (patch) | |
| tree | 8b88351e447d0853087e118e1c68fa33ebc0a994 /openstack/common | |
| parent | 6dfe2e11702009f2fd8c495579501f529ee743cf (diff) | |
| parent | dc8aa797c304251a3cb960f5274681a602ea077b (diff) | |
| download | oslo-c935d1cba2a5716b71930ae2b4acd9fbeca4abdc.tar.gz oslo-c935d1cba2a5716b71930ae2b4acd9fbeca4abdc.tar.xz oslo-c935d1cba2a5716b71930ae2b4acd9fbeca4abdc.zip | |
Merge "Allow launchers to be stopped multiple times"
Diffstat (limited to 'openstack/common')
| -rw-r--r-- | openstack/common/service.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/openstack/common/service.py b/openstack/common/service.py index 24ab5e9..cb71af2 100644 --- a/openstack/common/service.py +++ b/openstack/common/service.py @@ -317,7 +317,9 @@ class Service(object): def stop(self): self.tg.stop() self.tg.wait() - self._done.send() + # Signal that service cleanup is done: + if not self._done.ready(): + self._done.send() def wait(self): self._done.wait() @@ -340,9 +342,10 @@ class Services(object): service.stop() service.wait() - # each service has performed cleanup, now signal that the run_service + # Each service has performed cleanup, now signal that the run_service # wrapper threads can now die: - self.done.send() + if not self.done.ready(): + self.done.send() # reap threads: self.tg.stop() |
