src/hotspot/share/classfile/classLoaderData.hpp
changeset 55603 3868dde58ebb
parent 55268 c5fe45d1281d
child 58005 9ee010450e84
equal deleted inserted replaced
55602:73395f9cad54 55603:3868dde58ebb
   204  public:
   204  public:
   205   // GC interface.
   205   // GC interface.
   206 
   206 
   207   // The "claim" is typically used to check if oops_do needs to be applied on
   207   // The "claim" is typically used to check if oops_do needs to be applied on
   208   // the CLD or not. Most GCs only perform strong marking during the marking phase.
   208   // the CLD or not. Most GCs only perform strong marking during the marking phase.
   209   enum {
   209   enum Claim {
   210     _claim_none        = 0,
   210     _claim_none         = 0,
   211     _claim_finalizable = 2,
   211     _claim_finalizable  = 2,
   212     _claim_strong      = 3
   212     _claim_strong       = 3,
       
   213     _claim_other        = 4
   213   };
   214   };
   214   void clear_claim() { _claim = 0; }
   215   void clear_claim() { _claim = 0; }
       
   216   void clear_claim(int claim);
   215   bool claimed() const { return _claim != 0; }
   217   bool claimed() const { return _claim != 0; }
       
   218   bool claimed(int claim) const { return (_claim & claim) == claim; }
   216   bool try_claim(int claim);
   219   bool try_claim(int claim);
   217   int get_claim() const { return _claim; }
       
   218   void set_claim(int claim) { _claim = claim; }
       
   219 
   220 
   220   // Computes if the CLD is alive or not. This is safe to call in concurrent
   221   // Computes if the CLD is alive or not. This is safe to call in concurrent
   221   // contexts.
   222   // contexts.
   222   bool is_alive() const;
   223   bool is_alive() const;
   223 
   224