src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp

changeset 9793
7386b3a385ac
parent 7476
c2844108a708
child 9806
758c07667682
equal deleted inserted replaced
9792:9a7135d0a309 9793:7386b3a385ac
145 // in an effort to maintain a large chunk at the end of the heap. 145 // in an effort to maintain a large chunk at the end of the heap.
146 HeapWord* _nearLargestChunk; 146 HeapWord* _nearLargestChunk;
147 147
148 // Used to keep track of limit of sweep for the space 148 // Used to keep track of limit of sweep for the space
149 HeapWord* _sweep_limit; 149 HeapWord* _sweep_limit;
150
151 // Stable value of used().
152 size_t _used_stable;
150 153
151 // Support for compacting cms 154 // Support for compacting cms
152 HeapWord* cross_threshold(HeapWord* start, HeapWord* end); 155 HeapWord* cross_threshold(HeapWord* start, HeapWord* end);
153 HeapWord* forward(oop q, size_t size, CompactPoint* cp, HeapWord* compact_top); 156 HeapWord* forward(oop q, size_t size, CompactPoint* cp, HeapWord* compact_top);
154 157
341 // try to bump down the address and the allocator will try to bump it up. 344 // try to bump down the address and the allocator will try to bump it up.
342 // For now, however, we'll just use the default used_region() 345 // For now, however, we'll just use the default used_region()
343 // which overestimates the region by returning the entire 346 // which overestimates the region by returning the entire
344 // committed region (this is safe, but inefficient). 347 // committed region (this is safe, but inefficient).
345 348
349 // Returns monotonically increasing stable used space bytes for CMS.
350 // This is required for jstat and other memory monitoring tools
351 // that might otherwise see inconsistent used space values during a garbage
352 // collection, promotion or allocation into compactibleFreeListSpace.
353 // The value returned by this function might be smaller than the
354 // actual value.
355 size_t used_stable() const;
356 // Recalculate and cache the current stable used() value. Only to be called
357 // in places where we can be sure that the result is stable.
358 void recalculate_used_stable();
359
346 // Returns a subregion of the space containing all the objects in 360 // Returns a subregion of the space containing all the objects in
347 // the space. 361 // the space.
348 MemRegion used_region() const { 362 MemRegion used_region() const {
349 return MemRegion(bottom(), 363 return MemRegion(bottom(),
350 BlockOffsetArrayUseUnallocatedBlock ? 364 BlockOffsetArrayUseUnallocatedBlock ?

mercurial