mirror of
https://github.com/wolfpld/tracy.git
synced 2024-11-23 06:44:35 +00:00
7a6564feae
("The queue" is per-thread partial queue here.) This fixes a problem where one thread writes to the queue, then is terminated, making the (partially filled) queue available for other threads to recycle. If another thread re-owns the queue, it will change the associated thread id, while part of the queue was filled by the original thread. This obviously created invalid data during dequeue. The fix makes the recycling process check not only for queue inactivity (which is marked when the original thread terminates), but also if the queue is empty, preventing mixing data from different threads. |
||
---|---|---|
.. | ||
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 | ||
TracyThread.hpp |