================ @@ -66,3 +67,41 @@ void Progress::ReportProgress() { m_debugger_id); } } + +ProgressManager &ProgressManager::InstanceImpl() { + static std::once_flag g_once_flag; + static ProgressManager *g_progress_manager = nullptr; + std::call_once(g_once_flag, []() { + // NOTE: known leak to avoid global destructor chain issues. + g_progress_manager = new ProgressManager(); + }); + return *g_progress_manager; +} + +ProgressManager::ProgressManager() : m_progress_category_map() {} + +ProgressManager::~ProgressManager() {} + +ProgressManager &ProgressManager::Instance() { return InstanceImpl(); } + +void ProgressManager::Increment(std::string title) { + std::lock_guard<std::mutex> lock(m_progress_map_mutex); + auto pair = m_progress_category_map.insert(std::pair(title, 1)); + + // If pair.first is not empty after insertion it means that that + // category was entered for the first time and should not be incremented ---------------- adrian-prantl wrote:
. at the end of sentence https://github.com/llvm/llvm-project/pull/81319 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits