< prev index next >
src/hotspot/share/gc/parallel/parallelScavengeHeap.hpp
Print this page
rev 47884 : 8191564: Refactor GC related servicability code into GC specific subclasses
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
@@ -34,15 +34,18 @@
#include "gc/shared/collectorPolicy.hpp"
#include "gc/shared/gcPolicyCounters.hpp"
#include "gc/shared/gcWhen.hpp"
#include "gc/shared/strongRootsScope.hpp"
#include "memory/metaspace.hpp"
+#include "utilities/growableArray.hpp"
#include "utilities/ostream.hpp"
class AdjoiningGenerations;
class GCHeapSummary;
+class GCMemoryManager;
class GCTaskManager;
+class MemoryPool;
class PSAdaptiveSizePolicy;
class PSHeapSummary;
class ParallelScavengeHeap : public CollectedHeap {
friend class VMStructs;
@@ -62,10 +65,13 @@
unsigned int _death_march_count;
// The task manager
static GCTaskManager* _gc_task_manager;
+ GCMemoryManager* _minor_mgr;
+ GCMemoryManager* _major_mgr;
+
void trace_heap(GCWhen::Type when, const GCTracer* tracer);
protected:
static inline size_t total_invocations();
HeapWord* allocate_new_tlab(size_t size);
@@ -92,10 +98,13 @@
return "Parallel";
}
virtual CollectorPolicy* collector_policy() const { return _collector_policy; }
+ virtual GrowableArray<GCMemoryManager*> memory_managers();
+ virtual GrowableArray<MemoryPool*> memory_pools();
+
static PSYoungGen* young_gen() { return _young_gen; }
static PSOldGen* old_gen() { return _old_gen; }
virtual PSAdaptiveSizePolicy* size_policy() { return _size_policy; }
< prev index next >