208 return; |
208 return; |
209 } |
209 } |
210 JfrRecorder::start_recording(); |
210 JfrRecorder::start_recording(); |
211 JVM_END |
211 JVM_END |
212 |
212 |
|
213 JVM_ENTRY_NO_ENV(jboolean, jfr_is_recording(JNIEnv * env, jobject jvm)) |
|
214 return JfrRecorder::is_recording() ? JNI_TRUE : JNI_FALSE; |
|
215 JVM_END |
|
216 |
213 JVM_ENTRY_NO_ENV(void, jfr_end_recording(JNIEnv* env, jobject jvm)) |
217 JVM_ENTRY_NO_ENV(void, jfr_end_recording(JNIEnv* env, jobject jvm)) |
214 if (!JfrRecorder::is_recording()) { |
218 if (!JfrRecorder::is_recording()) { |
215 return; |
219 return; |
216 } |
220 } |
217 JfrRecorder::stop_recording(); |
221 JfrRecorder::stop_recording(); |
218 JVM_END |
222 JVM_END |
219 |
223 |
|
224 JVM_ENTRY_NO_ENV(void, jfr_mark_chunk_final(JNIEnv * env, jobject jvm)) |
|
225 JfrRepository::mark_chunk_final(); |
|
226 JVM_END |
220 |
227 |
221 JVM_ENTRY_NO_ENV(jboolean, jfr_emit_event(JNIEnv* env, jobject jvm, jlong eventTypeId, jlong timeStamp, jlong when)) |
228 JVM_ENTRY_NO_ENV(jboolean, jfr_emit_event(JNIEnv* env, jobject jvm, jlong eventTypeId, jlong timeStamp, jlong when)) |
222 JfrPeriodicEventSet::requestEvent((JfrEventId)eventTypeId); |
229 JfrPeriodicEventSet::requestEvent((JfrEventId)eventTypeId); |
223 return thread->has_pending_exception() ? JNI_FALSE : JNI_TRUE; |
230 return thread->has_pending_exception() ? JNI_FALSE : JNI_TRUE; |
224 JVM_END |
231 JVM_END |