Chromium Code Reviews| Index: base/profiler/scoped_tracker.h |
| diff --git a/base/profiler/scoped_tracker.h b/base/profiler/scoped_tracker.h |
| index fbd73099bcf122f59b2d639b381939c177120a0c..8cfee343144335919133a16e7a89ab0db1db2d03 100644 |
| --- a/base/profiler/scoped_tracker.h |
| +++ b/base/profiler/scoped_tracker.h |
| @@ -18,6 +18,22 @@ namespace tracked_objects { |
| // ScopedTracker instruments a region within the code if the instrumentation is |
| // enabled. It can be used, for example, to find out if a source of jankiness is |
| // inside the instrumented code region. |
| +// Details: |
| +// 1. This class creates a task (like ones created by PostTask calls or IPC |
| +// message handlers). This task can be seen in chrome://profiler and is sent as |
| +// a part of profiler data to the UMA server. See profiler_event.proto. |
| +// 2. That task extends from the object's constructor to its destructor |
| +// executions. |
| +// 3. The execution time associated with the task is the wallclock time between |
| +// its constructor and destructor, minus wallclock times of directly nested |
| +// tasks. |
|
mmenke
2014/11/03 16:19:15
Ahh...This is the important detail I was really co
|
| +// 4. Task creation that this class utilizes was highly optimized by jar@. |
| +// 5. The class doesn't create a task unless this was enabled for the current |
| +// process. Search for ScopedTracker::Enable for the current list of processes |
| +// and channels where it's activated. |
| +// 6. The class is designed for temporarily instrumenting code to find |
| +// performance problems, after which the instrumentation has to be removed. |
| +// However, in rare cases it might be added permanently, as an exception. |
| class BASE_EXPORT ScopedTracker { |
| public: |
| ScopedTracker(const Location& location); |