comparison src/share/vm/gc_implementation/g1/concurrentG1Refine.hpp @ 20337:1f1d373cd044

8038423: G1: Decommit memory within heap Summary: Allow G1 to decommit memory of arbitrary regions within the heap and their associated auxiliary data structures card table, BOT, hot card cache, and mark bitmaps. Reviewed-by: mgerdin, brutisso, jwilhelm
author tschatzl
date Thu, 21 Aug 2014 11:47:10 +0200
parents 570cb6369f17
children
comparison
equal deleted inserted replaced
20336:6701abbc4441 20337:1f1d373cd044
32 32
33 // Forward decl 33 // Forward decl
34 class ConcurrentG1RefineThread; 34 class ConcurrentG1RefineThread;
35 class G1CollectedHeap; 35 class G1CollectedHeap;
36 class G1HotCardCache; 36 class G1HotCardCache;
37 class G1RegionToSpaceMapper;
37 class G1RemSet; 38 class G1RemSet;
38 class DirtyCardQueue; 39 class DirtyCardQueue;
39 40
40 class ConcurrentG1Refine: public CHeapObj<mtGC> { 41 class ConcurrentG1Refine: public CHeapObj<mtGC> {
41 ConcurrentG1RefineThread** _threads; 42 ConcurrentG1RefineThread** _threads;
72 73
73 public: 74 public:
74 ConcurrentG1Refine(G1CollectedHeap* g1h, CardTableEntryClosure* refine_closure); 75 ConcurrentG1Refine(G1CollectedHeap* g1h, CardTableEntryClosure* refine_closure);
75 ~ConcurrentG1Refine(); 76 ~ConcurrentG1Refine();
76 77
77 void init(); // Accomplish some initialization that has to wait. 78 void init(G1RegionToSpaceMapper* card_counts_storage);
78 void stop(); 79 void stop();
79 80
80 void reinitialize_threads(); 81 void reinitialize_threads();
81 82
82 // Iterate over all concurrent refinement threads 83 // Iterate over all concurrent refinement threads