Function-local statics are destroyed in reverse order of initialization, on the same atexit stack that carries the shutdown handler installed at profiler startup. Statics initialized lazily while profiling are therefore destroyed before that handler runs, while worker and network threads may still be using them; with TRACY_NO_EXIT the handler blocks in the exit sequence until the server disconnects, keeping the threads live across the entire destruction. On Android this let a symbol query execute `s_mappings = ParseMappings()` on a destroyed vector, causing a use-after-free and a double free. The legacy-GCC thread data key carried the same hazard: pthread_key_delete at static destruction while threads could still call pthread_getspecific on the key. Construct the objects on the heap and never free them. The allocations are one-time and stay referenced, so leak sanitizers classify them as still reachable. Co-authored-by: Tim Jammer <tim.jammer@web.de>
Tracy Profiler
A real time, nanosecond resolution, remote telemetry, hybrid frame and sampling profiler for games and other applications.
Tracy supports profiling CPU (Direct support is provided for C, C++, Lua, Python and Fortran integration. At the same time, third-party bindings to many other languages exist on the internet, such as Rust, Zig, C#, OCaml, Odin, etc.), GPU (All major graphics/compute APIs: OpenGL, Vulkan, Direct3D 11/12, Metal, OpenCL, CUDA, WebGPU.), memory allocations, locks, context switches, automatically attribute screenshots to captured frames, and much more.
- Documentation for usage and build process instructions
- Releases containing the documentation (
tracy.pdf) and compiled Windows x64 binaries (Tracy-<version>.7z) as assets - Changelog
- Interactive demo
An Introduction to Tracy Profiler in C++ - Marcos Slomp - CppCon 2023
Introduction to Tracy Profiler v0.2
New features in Tracy Profiler v0.3
New features in Tracy Profiler v0.4
New features in Tracy Profiler v0.5
New features in Tracy Profiler v0.6
New features in Tracy Profiler v0.7
New features in Tracy Profiler v0.8


