[Lldb-commits] [lldb] SBDebugger: Add new APIs `AddDestroyCallback` and `RemoveDestroyCallback` (PR #89868)

Jonas Devlieghere via lldb-commits lldb-commits at lists.llvm.org
Tue May 7 09:55:20 PDT 2024


================
@@ -731,8 +747,11 @@ class Debugger : public std::enable_shared_from_this<Debugger>,
   lldb::TargetSP m_dummy_target_sp;
   Diagnostics::CallbackID m_diagnostics_callback_id;
 
-  lldb_private::DebuggerDestroyCallback m_destroy_callback = nullptr;
-  void *m_destroy_callback_baton = nullptr;
+  std::recursive_mutex m_destroy_callback_mutex;
----------------
JDevlieghere wrote:

@bulbazord But that's only if you call `Debugger::Destroy` (and therefore run the callbacks) on another thread, right? Given nothing else in `(SB)Debugger` provides such safety guarantees (besides the global debugger list) I'd say let's not overthink this and if we want to change that, let's do it holistically for the whole class instead of piecemeal. 

https://github.com/llvm/llvm-project/pull/89868


More information about the lldb-commits mailing list