< prev index next >
src/hotspot/share/gc/cms/cmsHeap.hpp
Print this page
@@ -23,19 +23,21 @@
*/
#ifndef SHARE_VM_GC_CMS_CMSHEAP_HPP
#define SHARE_VM_GC_CMS_CMSHEAP_HPP
+#include "gc/cms/cmsSettings.hpp"
#include "gc/cms/concurrentMarkSweepGeneration.hpp"
#include "gc/shared/collectedHeap.hpp"
#include "gc/shared/gcCause.hpp"
#include "gc/shared/genCollectedHeap.hpp"
#include "utilities/growableArray.hpp"
class CLDClosure;
-class GenCollectorPolicy;
+class CMSSettings;
class GCMemoryManager;
+class GCPolicyCounters;
class MemoryPool;
class OopsInGenClosure;
class outputStream;
class StrongRootsScope;
class ThreadClosure;
@@ -45,15 +47,17 @@
protected:
virtual void check_gen_kinds();
public:
- CMSHeap(GenCollectorPolicy *policy);
+ CMSHeap(const CMSSettings& settings);
// Returns JNI_OK on success
virtual jint initialize();
+ virtual void initialize_gc_policy_counters();
+
// Convenience function to be used in situations where the heap type can be
// asserted to be this type.
static CMSHeap* heap();
virtual Name kind() const {
@@ -95,10 +99,12 @@
CLDClosure* cld_closure);
GCMemoryManager* old_manager() const { return _old_manager; }
private:
+ const CMSSettings _settings;
+
WorkGang* _workers;
MemoryPool* _eden_pool;
MemoryPool* _survivor_pool;
MemoryPool* _old_pool;
< prev index next >