From ab2c32e52f448ca95d84f70fd627f9ece622ac14 Mon Sep 17 00:00:00 2001 From: Marcos Slomp Date: Wed, 4 Mar 2026 12:14:19 -0800 Subject: [PATCH] use SPSC queue notify/wait in the symbol queue to reduce the response latency of the symbol worker --- public/client/TracyProfiler.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/public/client/TracyProfiler.cpp b/public/client/TracyProfiler.cpp index deedf4c6..8fee216a 100644 --- a/public/client/TracyProfiler.cpp +++ b/public/client/TracyProfiler.cpp @@ -2066,6 +2066,8 @@ void Profiler::Worker() connActive = HandleServerQuery(); if( !connActive ) break; } + if ( !m_symbolQueue.empty() ) + m_symbolQueue.notify(); if( !connActive || ShouldExit() ) break; } if( ShouldExit() ) break; @@ -3657,7 +3659,7 @@ void Profiler::SymbolWorker() s_symbolThreadGone.store( true, std::memory_order_release ); return; } - std::this_thread::sleep_for( std::chrono::milliseconds( 20 ) ); + m_symbolQueue.wait( 20 ); } } }