src/hotspot/share/gc/shared/generation.hpp
changeset 48168 cb5d2d4453d0
parent 47546 64ba55ba8516
child 49964 99e698e94cc7
equal deleted inserted replaced
48167:f04a848c6f00 48168:cb5d2d4453d0
    56 //
    56 //
    57 //   ParNewGeneration + ConcurrentMarkSweepGeneration
    57 //   ParNewGeneration + ConcurrentMarkSweepGeneration
    58 //
    58 //
    59 
    59 
    60 class DefNewGeneration;
    60 class DefNewGeneration;
       
    61 class GCMemoryManager;
    61 class GenerationSpec;
    62 class GenerationSpec;
    62 class CompactibleSpace;
    63 class CompactibleSpace;
    63 class ContiguousSpace;
    64 class ContiguousSpace;
    64 class CompactPoint;
    65 class CompactPoint;
    65 class OopsInGenClosure;
    66 class OopsInGenClosure;
    83   friend class VMStructs;
    84   friend class VMStructs;
    84  private:
    85  private:
    85   jlong _time_of_last_gc; // time when last gc on this generation happened (ms)
    86   jlong _time_of_last_gc; // time when last gc on this generation happened (ms)
    86   MemRegion _prev_used_region; // for collectors that want to "remember" a value for
    87   MemRegion _prev_used_region; // for collectors that want to "remember" a value for
    87                                // used region at some specific point during collection.
    88                                // used region at some specific point during collection.
       
    89 
       
    90   GCMemoryManager* _gc_manager;
    88 
    91 
    89  protected:
    92  protected:
    90   // Minimum and maximum addresses for memory reserved (not necessarily
    93   // Minimum and maximum addresses for memory reserved (not necessarily
    91   // committed) for generation.
    94   // committed) for generation.
    92   // Used by card marking code. Must not overlap with address ranges of
    95   // Used by card marking code. Must not overlap with address ranges of
   552   virtual void print_summary_info_on(outputStream* st);
   555   virtual void print_summary_info_on(outputStream* st);
   553 
   556 
   554   // Performance Counter support
   557   // Performance Counter support
   555   virtual void update_counters() = 0;
   558   virtual void update_counters() = 0;
   556   virtual CollectorCounters* counters() { return _gc_counters; }
   559   virtual CollectorCounters* counters() { return _gc_counters; }
       
   560 
       
   561   GCMemoryManager* gc_manager() const {
       
   562     assert(_gc_manager != NULL, "not initialized yet");
       
   563     return _gc_manager;
       
   564   }
       
   565 
       
   566   void set_gc_manager(GCMemoryManager* gc_manager) {
       
   567     _gc_manager = gc_manager;
       
   568   }
       
   569 
   557 };
   570 };
   558 
   571 
   559 #endif // SHARE_VM_GC_SHARED_GENERATION_HPP
   572 #endif // SHARE_VM_GC_SHARED_GENERATION_HPP