X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=yardstick%2Fbenchmark%2Frunners%2Fbase.py;h=38ca34f4bc23d1e98c26c1e09879d39bd9af130f;hb=662efbb518793a268fb7e82057ccd9b8c197b386;hp=59ec4734aec20041b47e5fd58f1e7350a3c55779;hpb=a6f7294eadf66e54a65edd629513b2841136e924;p=yardstick.git diff --git a/yardstick/benchmark/runners/base.py b/yardstick/benchmark/runners/base.py index 59ec4734a..38ca34f4b 100644 --- a/yardstick/benchmark/runners/base.py +++ b/yardstick/benchmark/runners/base.py @@ -74,6 +74,15 @@ class Runner(object): Runner.queue.put('_TERMINATE_') Runner.dump_process.join() + @staticmethod + def terminate_all(): + '''Terminate all runners (subprocesses)''' + log.debug("Terminating all runners") + for runner in Runner.runners: + runner.process.terminate() + runner.process.join() + Runner.release(runner) + def __init__(self, config, queue): self.context = {} self.config = config @@ -92,3 +101,4 @@ class Runner(object): def join(self): self.process.join() + return self.process.exitcode