< prev index next >

src/hotspot/share/gc/shared/oopStorageSetParState.hpp

Print this page
rev 59956 : 8247819: G1: Process strong OopStorage entries in parallel
Reviewed-by:
Contributed-by: Erik Osterlund <erik.osterlund@oracle.com>, Stefan Karlsson <stefan.karlsson@oracle.com>, Thomas Schatzl <thomas.schatzl@oracle.com>


  24 
  25 #ifndef SHARE_GC_SHARED_OOPSTORAGESETPARSTATE_HPP
  26 #define SHARE_GC_SHARED_OOPSTORAGESETPARSTATE_HPP
  27 
  28 #include "gc/shared/oopStorageParState.hpp"
  29 #include "gc/shared/oopStorageSet.hpp"
  30 #include "utilities/valueObjArray.hpp"
  31 
  32 template <bool concurrent, bool is_const>
  33 class OopStorageSetStrongParState {
  34   typedef OopStorage::ParState<concurrent, is_const> ParStateType;
  35   typedef ValueObjArray<ParStateType, OopStorageSet::strong_count> ParStateArray;
  36 
  37   ParStateArray _par_states;
  38 
  39 public:
  40   OopStorageSetStrongParState();
  41 
  42   template <typename Closure>
  43   void oops_do(Closure* cl);



  44 };
  45 
  46 #endif // SHARE_GC_SHARED_OOPSTORAGESETPARSTATE_HPP


  24 
  25 #ifndef SHARE_GC_SHARED_OOPSTORAGESETPARSTATE_HPP
  26 #define SHARE_GC_SHARED_OOPSTORAGESETPARSTATE_HPP
  27 
  28 #include "gc/shared/oopStorageParState.hpp"
  29 #include "gc/shared/oopStorageSet.hpp"
  30 #include "utilities/valueObjArray.hpp"
  31 
  32 template <bool concurrent, bool is_const>
  33 class OopStorageSetStrongParState {
  34   typedef OopStorage::ParState<concurrent, is_const> ParStateType;
  35   typedef ValueObjArray<ParStateType, OopStorageSet::strong_count> ParStateArray;
  36 
  37   ParStateArray _par_states;
  38 
  39 public:
  40   OopStorageSetStrongParState();
  41 
  42   template <typename Closure>
  43   void oops_do(Closure* cl);
  44 
  45   ParStateType* par_state(int i) const { return _par_states.at(i); }
  46   int par_state_count() const { return _par_states.count(); }
  47 };
  48 
  49 #endif // SHARE_GC_SHARED_OOPSTORAGESETPARSTATE_HPP
< prev index next >