< prev index next >

src/share/vm/jfr/recorder/jfrRecorder.hpp

Print this page
rev 9061 : 8227011: Starting a JFR recording in response to JVMTI VMInit and / or Java agent premain corrupts memory
Reviewed-by: egahlin, rwestberg


  25 #ifndef SHARE_VM_JFR_RECORDER_JFRRECORDER_HPP
  26 #define SHARE_VM_JFR_RECORDER_JFRRECORDER_HPP
  27 
  28 #include "jfr/utilities/jfrAllocation.hpp"
  29 
  30 class JavaThread;
  31 class Thread;
  32 
  33 //
  34 // Represents the singleton instance of Flight Recorder.
  35 // Lifecycle management of recorder components.
  36 //
  37 class JfrRecorder : public JfrCHeapObj {
  38   friend class Jfr;
  39   friend void recorderthread_entry(JavaThread*, Thread*);
  40  private:
  41   static bool _shutting_down;
  42 
  43   static bool create_checkpoint_manager();
  44   static bool create_chunk_repository();

  45   static bool create_jvmti_agent();
  46   static bool create_os_interface();
  47   static bool create_post_box();
  48   static bool create_recorder_thread();
  49   static bool create_stacktrace_repository();
  50   static bool create_storage();
  51   static bool create_stringpool();
  52   static bool create_thread_sampling();
  53   static bool create_components();
  54   static void destroy_components();
  55   static void on_recorder_thread_exit();
  56   static bool on_vm_start();
  57   static bool on_vm_init();
  58 
  59  public:
  60   static bool is_enabled();
  61   static bool is_disabled();
  62   static bool create(bool simulate_failure);
  63   static bool is_created();
  64   static void destroy();


  25 #ifndef SHARE_VM_JFR_RECORDER_JFRRECORDER_HPP
  26 #define SHARE_VM_JFR_RECORDER_JFRRECORDER_HPP
  27 
  28 #include "jfr/utilities/jfrAllocation.hpp"
  29 
  30 class JavaThread;
  31 class Thread;
  32 
  33 //
  34 // Represents the singleton instance of Flight Recorder.
  35 // Lifecycle management of recorder components.
  36 //
  37 class JfrRecorder : public JfrCHeapObj {
  38   friend class Jfr;
  39   friend void recorderthread_entry(JavaThread*, Thread*);
  40  private:
  41   static bool _shutting_down;
  42 
  43   static bool create_checkpoint_manager();
  44   static bool create_chunk_repository();
  45   static bool create_java_event_writer();
  46   static bool create_jvmti_agent();
  47   static bool create_os_interface();
  48   static bool create_post_box();
  49   static bool create_recorder_thread();
  50   static bool create_stacktrace_repository();
  51   static bool create_storage();
  52   static bool create_stringpool();
  53   static bool create_thread_sampling();
  54   static bool create_components();
  55   static void destroy_components();
  56   static void on_recorder_thread_exit();
  57   static bool on_vm_start();
  58   static bool on_vm_init();
  59 
  60  public:
  61   static bool is_enabled();
  62   static bool is_disabled();
  63   static bool create(bool simulate_failure);
  64   static bool is_created();
  65   static void destroy();
< prev index next >