class Sampler

Defined at line 47 of file ../../src/performance/experimental/profiler/sampler.h

Protected Members

async_dispatcher_t * dispatcher_
TargetTree targets_
vector sample_specs_
vector inspecting_durations_
unordered_map samples_
unordered_map process_watchers_
unordered_map job_watchers_
map contexts_

Public Methods

void Sampler (async_dispatcher_t * dispatcher, TargetTree targets, std::vector<fuchsia_cpu_profiler::SamplingConfig> sample_specs)

Defined at line 49 of file ../../src/performance/experimental/profiler/sampler.h

fxl::WeakPtr<Sampler> GetWeakPtr ()

Defined at line 61 of file ../../src/performance/experimental/profiler/sampler.h

std::unordered_map<zx_koid_t, std::vector<Sample>> & GetSamples ()

Defined at line 63 of file ../../src/performance/experimental/profiler/sampler.h

std::vector<zx::ticks> SamplingDurations ()

Defined at line 64 of file ../../src/performance/experimental/profiler/sampler.h

void ~Sampler ()

Defined at line 66 of file ../../src/performance/experimental/profiler/sampler.h

zx::result<> Start (size_t buffer_size_mb)

Defined at line 184 of file ../../src/performance/experimental/profiler/sampler.cc

zx::result<> Stop ()

Defined at line 251 of file ../../src/performance/experimental/profiler/sampler.cc

zx::result<profiler::SymbolizationContext> GetContexts ()

Return the information needed to symbolize the samples

Defined at line 288 of file ../../src/performance/experimental/profiler/sampler.cc

zx::result<> AddTarget (JobTarget && target)

Defined at line 120 of file ../../src/performance/experimental/profiler/sampler.cc

Protected Methods

zx::result<> WatchTarget (const JobTarget & target)

Defined at line 129 of file ../../src/performance/experimental/profiler/sampler.cc

void AddThread (std::vector<zx_koid_t> job_path, zx_koid_t pid, zx_koid_t tid, zx::thread t)

Defined at line 310 of file ../../src/performance/experimental/profiler/sampler.cc

void RemoveThread (std::vector<zx_koid_t> job_path, zx_koid_t pid, zx_koid_t tid)

Defined at line 329 of file ../../src/performance/experimental/profiler/sampler.cc

void CollectSamples (async_dispatcher_t * dispatcher, async::TaskBase * task, zx_status_t status)

Defined at line 258 of file ../../src/performance/experimental/profiler/sampler.cc

void CacheModules (const ProcessTarget & p)

Defined at line 338 of file ../../src/performance/experimental/profiler/sampler.cc