- int n = 0;
- BOOST_FOREACH (boost::thread* i, _threads) {
- /* Be careful not to throw in here otherwise _threads will not be clear()ed */
- LOG_GENERAL ("Terminating thread %1 of %2", n + 1, _threads.size ());
- i->interrupt ();
- try {
- i->join ();
- } catch (exception& e) {
- LOG_ERROR ("join() threw an exception: %1", e.what());
- } catch (...) {
- LOG_ERROR_NC ("join() threw an exception");
- }
- LOG_GENERAL_NC ("Thread terminated");
- ++n;
- delete i;