Ver Fonte

common/detached_tasks: Wait for tasks before shutting down

If this is not waited on, the synchronization primitives are destroyed
whe main exits and the detached task ends up signalling garbage and not
properly finishing.
Rodrigo Locatti há 5 anos atrás
pai
commit
1ca9a13e50
1 ficheiros alterados com 2 adições e 0 exclusões
  1. 2 0
      src/common/detached_tasks.cpp

+ 2 - 0
src/common/detached_tasks.cpp

@@ -21,6 +21,8 @@ void DetachedTasks::WaitForAllTasks() {
 }
 
 DetachedTasks::~DetachedTasks() {
+    WaitForAllTasks();
+
     std::unique_lock lock{mutex};
     ASSERT(count == 0);
     instance = nullptr;