Mercurial > hg > truffle
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 |