// Copyright 2019 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CHROME_COMMON_PROFILER_MAIN_THREAD_STACK_SAMPLING_PROFILER_H_ #define CHROME_COMMON_PROFILER_MAIN_THREAD_STACK_SAMPLING_PROFILER_H_ #include <memory> #include "base/profiler/stack_sampling_profiler.h" class ThreadProfiler; // A wrapper class that installs unwinder prerequisites and begins profiling // stack samples upon construction, and ensures correct shutdown behavior on // destruction. Should only be used on the main thread of a process. Samples are // collected for the thread of the current process where this object is // constructed, and only if profiling is enabled for the thread. This data is // used to understand startup performance behavior, and the object should // therefore be created as early during initialization as possible. class MainThreadStackSamplingProfiler { … }; #endif // CHROME_COMMON_PROFILER_MAIN_THREAD_STACK_SAMPLING_PROFILER_H_