< prev index next >

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

Print this page
rev 47884 : 8191564: Refactor GC related servicability code into GC specific subclasses

@@ -32,22 +32,25 @@
 #include "runtime/perfData.hpp"
 #include "runtime/safepoint.hpp"
 #include "utilities/debug.hpp"
 #include "utilities/events.hpp"
 #include "utilities/formatBuffer.hpp"
+#include "utilities/growableArray.hpp"
 
 // A "CollectedHeap" is an implementation of a java heap for HotSpot.  This
 // is an abstract class: there may be many different kinds of heaps.  This
 // class defines the functions that a heap must implement, and contains
 // infrastructure common to all heaps.
 
 class AdaptiveSizePolicy;
 class BarrierSet;
 class CollectorPolicy;
 class GCHeapSummary;
+class GCMemoryManager;
 class GCTimer;
 class GCTracer;
+class MemoryPool;
 class MetaspaceSummary;
 class Thread;
 class ThreadClosure;
 class VirtualSpaceSummary;
 class WorkGang;

@@ -483,10 +486,13 @@
   void increment_total_full_collections() { _total_full_collections++; }
 
   // Return the CollectorPolicy for the heap
   virtual CollectorPolicy* collector_policy() const = 0;
 
+  virtual GrowableArray<GCMemoryManager*> memory_managers() = 0;
+  virtual GrowableArray<MemoryPool*> memory_pools() = 0;
+
   // Iterate over all objects, calling "cl.do_object" on each.
   virtual void object_iterate(ObjectClosure* cl) = 0;
 
   // Similar to object_iterate() except iterates only
   // over live objects.
< prev index next >