mirror of
https://github.com/wolfpld/tracy.git
synced 2024-11-10 10:41:50 +00:00
25082b2bec
Reporting topology requires producer to be available, which creates a deadlock during delayed init data structures construction. Calling GetProducer() results in a call to GetProfilerThreadData(), which in turn calls GetProfilerData() to construct its thread local variable. However, at this point we already are calling GetProfilerData() (to construct the profiler itself). This would result in an incorrect double construction of data, but the code already prevents this by allowing init code to be entered only once. Hence the deadlock. Currently this is a non-issue, as no platform which can report CPU topology needs to use delayed init. |
||
---|---|---|
.. | ||
tracy_concurrentqueue.h | ||
tracy_rpmalloc.cpp | ||
tracy_rpmalloc.hpp | ||
TracyArmCpuTable.hpp | ||
TracyCallstack.cpp | ||
TracyCallstack.h | ||
TracyCallstack.hpp | ||
TracyDxt1.cpp | ||
TracyDxt1.hpp | ||
TracyFastVector.hpp | ||
TracyLock.hpp | ||
TracyProfiler.cpp | ||
TracyProfiler.hpp | ||
TracyScoped.hpp | ||
TracySysTime.cpp | ||
TracySysTime.hpp | ||
TracySysTrace.cpp | ||
TracySysTrace.hpp | ||
TracySysTracePayload.hpp | ||
TracyThread.hpp |