1
0
mirror of https://github.com/wolfpld/tracy.git synced 2025-03-20 07:40:02 +08:00

Decouple source code retrieval from the profiler thread.

This will prevent apparent freezes of the profiler when debuginfod queries are
made.
This commit is contained in:
Bartosz Taudul
2022-10-13 00:27:28 +02:00
parent 6ca1c98655
commit a85c0e18d2
4 changed files with 69 additions and 37 deletions
+4 -3
View File
@@ -168,7 +168,8 @@ class Profiler
CallstackFrame,
SymbolQuery,
ExternalName,
KernelCode
KernelCode,
SourceCode
};
struct SymbolQueueItem
@@ -807,15 +808,15 @@ private:
void QueueSymbolQuery( uint64_t symbol );
void QueueExternalName( uint64_t ptr );
void QueueKernelCode( uint64_t symbol, uint32_t size );
void QueueSourceCodeQuery();
bool HandleServerQuery();
void HandleDisconnect();
void HandleParameter( uint64_t payload );
void HandleSymbolCodeQuery( uint64_t symbol, uint32_t size );
void HandleSourceCodeQuery();
void HandleSourceCodeQuery( char* data, char* image );
void AckServerQuery();
void AckSourceCodeNotAvailable();
void AckSymbolCodeNotAvailable();
void CalibrateTimer();