| Index: src/cpu-profiler.h
|
| diff --git a/src/cpu-profiler.h b/src/cpu-profiler.h
|
| index 9cd44842095ccabe25d0ef74f0c0f0b53dde958d..202032c5250beb0dcf712cf049ec2d0b44da5daa 100644
|
| --- a/src/cpu-profiler.h
|
| +++ b/src/cpu-profiler.h
|
| @@ -124,7 +124,9 @@ class TickSampleEventRecord {
|
| // methods called by event producers: VM and stack sampler threads.
|
| class ProfilerEventsProcessor : public Thread {
|
| public:
|
| - explicit ProfilerEventsProcessor(ProfileGenerator* generator);
|
| + ProfilerEventsProcessor(ProfileGenerator* generator,
|
| + Sampler* sampler,
|
| + int period_in_useconds);
|
| virtual ~ProfilerEventsProcessor() {}
|
|
|
| // Thread control.
|
| @@ -173,11 +175,16 @@ class ProfilerEventsProcessor : public Thread {
|
| // Called from events processing thread (Run() method.)
|
| bool ProcessCodeEvent(unsigned* dequeue_order);
|
| bool ProcessTicks(unsigned dequeue_order);
|
| + void ProcessEventsAndDoSample(unsigned* dequeue_order);
|
| + void ProcessEventsAndYield(unsigned* dequeue_order);
|
|
|
| INLINE(static bool FilterOutCodeCreateEvent(Logger::LogEventsAndTags tag));
|
|
|
| ProfileGenerator* generator_;
|
| + Sampler* sampler_;
|
| bool running_;
|
| + // Sampling period in microseconds.
|
| + const int period_in_useconds_;
|
| UnboundQueue<CodeEventsContainer> events_buffer_;
|
| SamplingCircularQueue ticks_buffer_;
|
| UnboundQueue<TickSampleEventRecord> ticks_from_vm_buffer_;
|
|
|