34 class CLDClosure;
35 class GenCollectorPolicy;
36 class GCMemoryManager;
37 class MemoryPool;
38 class OopsInGenClosure;
39 class outputStream;
40 class StrongRootsScope;
41 class ThreadClosure;
42 class WorkGang;
43
44 class CMSHeap : public GenCollectedHeap {
45
46 protected:
47 virtual void check_gen_kinds();
48
49 public:
50 CMSHeap(GenCollectorPolicy *policy);
51
52 // Returns JNI_OK on success
53 virtual jint initialize();
54
55 // Convenience function to be used in situations where the heap type can be
56 // asserted to be this type.
57 static CMSHeap* heap();
58
59 virtual Name kind() const {
60 return CollectedHeap::CMS;
61 }
62
63 virtual const char* name() const {
64 return "Concurrent Mark Sweep";
65 }
66
67 WorkGang* workers() const { return _workers; }
68
69 virtual void print_gc_threads_on(outputStream* st) const;
70 virtual void gc_threads_do(ThreadClosure* tc) const;
71 virtual void print_on_error(outputStream* st) const;
72
73 // Perform a full collection of the heap; intended for use in implementing
|
34 class CLDClosure;
35 class GenCollectorPolicy;
36 class GCMemoryManager;
37 class MemoryPool;
38 class OopsInGenClosure;
39 class outputStream;
40 class StrongRootsScope;
41 class ThreadClosure;
42 class WorkGang;
43
44 class CMSHeap : public GenCollectedHeap {
45
46 protected:
47 virtual void check_gen_kinds();
48
49 public:
50 CMSHeap(GenCollectorPolicy *policy);
51
52 // Returns JNI_OK on success
53 virtual jint initialize();
54 virtual CardTableRS* create_rem_set(const MemRegion& reserved_region);
55
56 // Convenience function to be used in situations where the heap type can be
57 // asserted to be this type.
58 static CMSHeap* heap();
59
60 virtual Name kind() const {
61 return CollectedHeap::CMS;
62 }
63
64 virtual const char* name() const {
65 return "Concurrent Mark Sweep";
66 }
67
68 WorkGang* workers() const { return _workers; }
69
70 virtual void print_gc_threads_on(outputStream* st) const;
71 virtual void gc_threads_do(ThreadClosure* tc) const;
72 virtual void print_on_error(outputStream* st) const;
73
74 // Perform a full collection of the heap; intended for use in implementing
|