commit | 0d96172b015b77ac077cbfc6dfede0576edfe940 | [log] [tgz] |
---|---|---|
author | Alexander Timin <altimin@google.com> | Mon Mar 15 16:58:21 2021 +0000 |
committer | Alexander Timin <altimin@google.com> | Mon Mar 15 16:58:21 2021 +0000 |
tree | b9bc131495c100dbd2c95d37e9247f06f119dfe7 | |
parent | 4d6b60244ce485989b2f296f933d019bbd4c65e5 [diff] |
TracedValue: add support for static and dynamic keys. Add separate paths for static and dynamic dictionary keys to ensure that dictionary key interning can be implemented later without any changes to the clients. StaticKey has an implicit constructor for string literals, which means that the string literals can be passed to TracedDictionary::Add directly. All other values will need to be wrapped either in StaticKey (for const char* pointers which are compile-time constant) or in DynamicKey (const char* pointers which are generated at runtime or std::strings). R=skyostil@google.com Change-Id: I300c1d3c6aded63878586a365c8fd10d8d78e24c
Perfetto is a production-grade open-source stack for performance instrumentation and trace analysis. It offers services and libraries and for recording system-level and app-level traces, native + java heap profiling, a library for analyzing traces using SQL and a web-based UI to visualize and explore multi-GB traces.
See https://perfetto.dev/docs or the /docs/ directory for documentation.