diff --git a/src/manager.cpp b/src/manager.cpp
index b7c94832d3e8e4fefa8ae9bcea5a8713e67e3be2..008eb9810baaff9d831d14a607629f4413e7150f 100644
--- a/src/manager.cpp
+++ b/src/manager.cpp
@@ -789,6 +789,12 @@ Manager::finish() noexcept
         }
 
         pimpl_->ice_tf_.reset();
+
+        // Flush remaining tasks (free lambda' with capture)
+        pimpl_->pendingTaskList_.clear();
+        pimpl_->scheduledTasks_.clear();
+        pimpl_->eventHandlerMap_.clear();
+
         pj_shutdown();
         ThreadPool::instance().join();
     } catch (const VoipLinkException &err) {