diff --git a/radio/src/os/timer_pthread.cpp b/radio/src/os/timer_pthread.cpp index 12418fcce..e6ae1f0c9 100644 --- a/radio/src/os/timer_pthread.cpp +++ b/radio/src/os/timer_pthread.cpp @@ -52,18 +52,11 @@ void timer_queue::start() } void timer_queue::stop() { - bool stopping = false; - std::unique_lock lock(_cmds_mutex); - std::unique_lock slock(_stop_mutex); - if (_running) { - stopping = true; _running = false; lock.unlock(); _cmds_condition.notify_one(); - _stop_condition.wait(slock); - slock.unlock(); } _thread->join(); TRACE(" stopped"); @@ -127,8 +120,6 @@ void timer_queue::main_loop() { async_calls(); trigger_timers(); } - - _stop_condition.notify_one(); } void timer_queue::process_cmds() diff --git a/radio/src/os/timer_pthread_impl.h b/radio/src/os/timer_pthread_impl.h index ff4e3ca90..bc7a1df4a 100644 --- a/radio/src/os/timer_pthread_impl.h +++ b/radio/src/os/timer_pthread_impl.h @@ -37,9 +37,6 @@ class timer_queue { std::mutex _cmds_mutex; std::condition_variable _cmds_condition; - std::mutex _stop_mutex; - std::condition_variable _stop_condition; - std::vector _timers; std::vector _funcs;