From 1352d0c66744516f2275c960e692be01ff80ee5a Mon Sep 17 00:00:00 2001 From: ISHIDA Wataru Date: Sun, 9 Nov 2014 19:26:17 +0900 Subject: [PATCH] bgp: enable to stop a chile thread by specifying its name Signed-off-by: ISHIDA Wataru Signed-off-by: FUJITA Tomonori --- ryu/services/protocols/bgp/base.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/ryu/services/protocols/bgp/base.py b/ryu/services/protocols/bgp/base.py index ef175db0..616315f6 100644 --- a/ryu/services/protocols/bgp/base.py +++ b/ryu/services/protocols/bgp/base.py @@ -267,14 +267,16 @@ class Activity(object): if child_activity.started: child_activity.stop() - def _stop_child_threads(self): + def _stop_child_threads(self, name=None): """Stops all threads spawn by this activity. """ child_threads = self._child_thread_map.items() for thread_name, thread in child_threads: - LOG.debug('%s: Stopping child thread %s' % - (self.name, thread_name)) - thread.kill() + if not name or thread_name is name: + LOG.debug('%s: Stopping child thread %s' % + (self.name, thread_name)) + thread.kill() + del self._child_thread_map[thread_name] def _close_asso_sockets(self): """Closes all the sockets linked to this activity.