Index: src/cpu-profiler.h |
diff --git a/src/cpu-profiler.h b/src/cpu-profiler.h |
index 9cd44842095ccabe25d0ef74f0c0f0b53dde958d..d335dedc5cb765f2f2a66eb1e451207c44d749f3 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); |
+ explicit ProfilerEventsProcessor(ProfileGenerator* generator, |
+ Sampler* sampler, |
+ int period_in_useconds); |
virtual ~ProfilerEventsProcessor() {} |
// Thread control. |
@@ -172,12 +174,16 @@ class ProfilerEventsProcessor : public Thread { |
// Called from events processing thread (Run() method.) |
bool ProcessCodeEvent(unsigned* dequeue_order); |
- bool ProcessTicks(unsigned dequeue_order); |
+ bool ProcessTicks(int64_t stop_time, unsigned dequeue_order); |
+ void ProcessEventsQueue(int64_t stop_time, 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_; |