equal
deleted
inserted
replaced
111 const JfrThreadLocal* const tl = thread->jfr_thread_local(); |
111 const JfrThreadLocal* const tl = thread->jfr_thread_local(); |
112 assert(tl != NULL, "invariant"); |
112 assert(tl != NULL, "invariant"); |
113 if (tl->is_excluded()) { |
113 if (tl->is_excluded()) { |
114 return 0; |
114 return 0; |
115 } |
115 } |
116 if (!tl->has_thread_checkpoint()) { |
116 if (!tl->has_thread_blob()) { |
117 JfrCheckpointManager::create_thread_checkpoint(thread); |
117 JfrCheckpointManager::create_thread_blob(thread); |
118 } |
118 } |
119 assert(tl->has_thread_checkpoint(), "invariant"); |
119 assert(tl->has_thread_blob(), "invariant"); |
120 return tl->thread_id(); |
120 return tl->thread_id(); |
121 } |
121 } |
122 |
122 |
123 static void record_stacktrace(JavaThread* thread) { |
123 static void record_stacktrace(JavaThread* thread) { |
124 assert(thread != NULL, "invariant"); |
124 assert(thread != NULL, "invariant"); |
146 |
146 |
147 void ObjectSampler::add(HeapWord* obj, size_t allocated, traceid thread_id, JavaThread* thread) { |
147 void ObjectSampler::add(HeapWord* obj, size_t allocated, traceid thread_id, JavaThread* thread) { |
148 assert(obj != NULL, "invariant"); |
148 assert(obj != NULL, "invariant"); |
149 assert(thread_id != 0, "invariant"); |
149 assert(thread_id != 0, "invariant"); |
150 assert(thread != NULL, "invariant"); |
150 assert(thread != NULL, "invariant"); |
151 assert(thread->jfr_thread_local()->has_thread_checkpoint(), "invariant"); |
151 assert(thread->jfr_thread_local()->has_thread_blob(), "invariant"); |
152 |
152 |
153 if (_dead_samples) { |
153 if (_dead_samples) { |
154 scavenge(); |
154 scavenge(); |
155 assert(!_dead_samples, "invariant"); |
155 assert(!_dead_samples, "invariant"); |
156 } |
156 } |
172 |
172 |
173 assert(sample != NULL, "invariant"); |
173 assert(sample != NULL, "invariant"); |
174 sample->set_thread_id(thread_id); |
174 sample->set_thread_id(thread_id); |
175 |
175 |
176 const JfrThreadLocal* const tl = thread->jfr_thread_local(); |
176 const JfrThreadLocal* const tl = thread->jfr_thread_local(); |
177 sample->set_thread_checkpoint(tl->thread_checkpoint()); |
177 sample->set_thread(tl->thread_blob()); |
178 |
178 |
179 const unsigned int stacktrace_hash = tl->cached_stack_trace_hash(); |
179 const unsigned int stacktrace_hash = tl->cached_stack_trace_hash(); |
180 if (stacktrace_hash != 0) { |
180 if (stacktrace_hash != 0) { |
181 sample->set_stack_trace_id(tl->cached_stack_trace_id()); |
181 sample->set_stack_trace_id(tl->cached_stack_trace_id()); |
182 sample->set_stack_trace_hash(stacktrace_hash); |
182 sample->set_stack_trace_hash(stacktrace_hash); |