From 1ca0d970fc8c3972511067cfbdf9314a6c35d0eb Mon Sep 17 00:00:00 2001 From: Robin Sommer Date: Mon, 16 Jul 2012 13:39:19 -0700 Subject: [PATCH] Removing the thread kill functionality. Wasn't really used and has potential for trouble. --- src/main.cc | 6 ------ src/threading/Manager.cc | 8 -------- src/threading/Manager.h | 9 --------- 3 files changed, 23 deletions(-) diff --git a/src/main.cc b/src/main.cc index d94a32df63..d3937b3449 100644 --- a/src/main.cc +++ b/src/main.cc @@ -361,12 +361,6 @@ RETSIGTYPE sig_handler(int signo) set_processing_status("TERMINATING", "sig_handler"); signal_val = signo; - if ( thread_mgr->Terminating() && (signal_val == SIGTERM || signal_val == SIGINT) ) - // If the thread manager is already terminating (i.e., - // waiting for child threads to exit), another term signal - // will send the threads a kill. - thread_mgr->KillThreads(); - return RETSIGVAL; } diff --git a/src/threading/Manager.cc b/src/threading/Manager.cc index d8f3936037..8e0610a056 100644 --- a/src/threading/Manager.cc +++ b/src/threading/Manager.cc @@ -48,14 +48,6 @@ void Manager::Terminate() terminating = false; } -void Manager::KillThreads() - { - DBG_LOG(DBG_THREADING, "Killing threads ..."); - - for ( all_thread_list::iterator i = all_threads.begin(); i != all_threads.end(); i++ ) - (*i)->Kill(); - } - void Manager::AddThread(BasicThread* thread) { DBG_LOG(DBG_THREADING, "Adding thread %s ...", thread->Name().c_str()); diff --git a/src/threading/Manager.h b/src/threading/Manager.h index 1afd115da0..1c7914fcde 100644 --- a/src/threading/Manager.h +++ b/src/threading/Manager.h @@ -49,15 +49,6 @@ public: */ bool Terminating() const { return terminating; } - /** - * Immediately kills all child threads. It does however not yet join - * them, one still needs to call Terminate() for that. - * - * This method is safe to call from a signal handler, and can in fact - * be called while Terminate() is already in progress. - */ - void KillThreads(); - typedef std::list > msg_stats_list; /**