src/hotspot/share/jfr/recorder/storage/jfrBuffer.hpp
changeset 54964 ec7d6d8effc7
parent 53244 9807daeb47c4
child 55053 d58e1a447d2b
equal deleted inserted replaced
54963:a5f5e680ea32 54964:ec7d6d8effc7
    55   u2 _flags;
    55   u2 _flags;
    56   u2 _header_size;
    56   u2 _header_size;
    57   u4 _size;
    57   u4 _size;
    58 
    58 
    59   const u1* stable_top() const;
    59   const u1* stable_top() const;
    60   void clear_flags();
       
    61 
    60 
    62  public:
    61  public:
    63   JfrBuffer();
    62   JfrBuffer();
    64   bool initialize(size_t header_size, size_t size, const void* id = NULL);
    63   bool initialize(size_t header_size, size_t size, const void* id = NULL);
    65   void reinitialize();
    64   void reinitialize();
   148 
   147 
   149   void clear_identity();
   148   void clear_identity();
   150 
   149 
   151   void acquire(const void* id);
   150   void acquire(const void* id);
   152   bool try_acquire(const void* id);
   151   bool try_acquire(const void* id);
       
   152   bool acquired_by(const void* id) const;
       
   153   bool acquired_by_self() const;
   153   void release();
   154   void release();
   154 
   155 
   155   void move(JfrBuffer* const to, size_t size);
   156   void move(JfrBuffer* const to, size_t size);
   156   void concurrent_move_and_reinitialize(JfrBuffer* const to, size_t size);
   157   void concurrent_move_and_reinitialize(JfrBuffer* const to, size_t size);
   157 
   158 
   164   void clear_lease();
   165   void clear_lease();
   165 
   166 
   166   bool retired() const;
   167   bool retired() const;
   167   void set_retired();
   168   void set_retired();
   168   void clear_retired();
   169   void clear_retired();
   169 
       
   170   debug_only(bool acquired_by_self() const;)
       
   171 };
   170 };
   172 
   171 
   173 class JfrAgeNode : public JfrBuffer {
   172 class JfrAgeNode : public JfrBuffer {
   174  private:
   173  private:
   175   JfrBuffer* _retired;
   174   JfrBuffer* _retired;