< prev index next >

src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp

Print this page




1303                                bool concurrent = false) const;
1304 
1305   // Clear the cached cset start regions and (more importantly)
1306   // the time stamps. Called when we reset the GC time stamp.
1307   void clear_cset_start_regions();
1308 
1309   // Given the id of a worker, obtain or calculate a suitable
1310   // starting region for iterating over the current collection set.
1311   HeapRegion* start_cset_region_for_worker(uint worker_i);
1312 
1313   // Iterate over the regions (if any) in the current collection set.
1314   void collection_set_iterate(HeapRegionClosure* blk);
1315 
1316   // As above but starting from region r
1317   void collection_set_iterate_from(HeapRegion* r, HeapRegionClosure *blk);
1318 
1319   HeapRegion* next_compaction_region(const HeapRegion* from) const;
1320 
1321   // A CollectedHeap will contain some number of spaces.  This finds the
1322   // space containing a given address, or else returns NULL.
1323   virtual Space* space_containing(const void* addr) const;
1324 
1325   // Returns the HeapRegion that contains addr. addr must not be NULL.
1326   template <class T>
1327   inline HeapRegion* heap_region_containing_raw(const T addr) const;
1328 
1329   // Returns the HeapRegion that contains addr. addr must not be NULL.
1330   // If addr is within a humongous continues region, it returns its humongous start region.
1331   template <class T>
1332   inline HeapRegion* heap_region_containing(const T addr) const;
1333 
1334   // A CollectedHeap is divided into a dense sequence of "blocks"; that is,
1335   // each address in the (reserved) heap is a member of exactly
1336   // one block.  The defining characteristic of a block is that it is
1337   // possible to find its size, and thus to progress forward to the next
1338   // block.  (Blocks may be of different sizes.)  Thus, blocks may
1339   // represent Java objects, or they might be free blocks in a
1340   // free-list-based heap (or subheap), as long as the two kinds are
1341   // distinguishable and the size of each is determinable.
1342 
1343   // Returns the address of the start of the "block" that contains the




1303                                bool concurrent = false) const;
1304 
1305   // Clear the cached cset start regions and (more importantly)
1306   // the time stamps. Called when we reset the GC time stamp.
1307   void clear_cset_start_regions();
1308 
1309   // Given the id of a worker, obtain or calculate a suitable
1310   // starting region for iterating over the current collection set.
1311   HeapRegion* start_cset_region_for_worker(uint worker_i);
1312 
1313   // Iterate over the regions (if any) in the current collection set.
1314   void collection_set_iterate(HeapRegionClosure* blk);
1315 
1316   // As above but starting from region r
1317   void collection_set_iterate_from(HeapRegion* r, HeapRegionClosure *blk);
1318 
1319   HeapRegion* next_compaction_region(const HeapRegion* from) const;
1320 
1321   // A CollectedHeap will contain some number of spaces.  This finds the
1322   // space containing a given address, or else returns NULL.
1323   Space* space_containing(const void* addr) const;
1324 
1325   // Returns the HeapRegion that contains addr. addr must not be NULL.
1326   template <class T>
1327   inline HeapRegion* heap_region_containing_raw(const T addr) const;
1328 
1329   // Returns the HeapRegion that contains addr. addr must not be NULL.
1330   // If addr is within a humongous continues region, it returns its humongous start region.
1331   template <class T>
1332   inline HeapRegion* heap_region_containing(const T addr) const;
1333 
1334   // A CollectedHeap is divided into a dense sequence of "blocks"; that is,
1335   // each address in the (reserved) heap is a member of exactly
1336   // one block.  The defining characteristic of a block is that it is
1337   // possible to find its size, and thus to progress forward to the next
1338   // block.  (Blocks may be of different sizes.)  Thus, blocks may
1339   // represent Java objects, or they might be free blocks in a
1340   // free-list-based heap (or subheap), as long as the two kinds are
1341   // distinguishable and the size of each is determinable.
1342 
1343   // Returns the address of the start of the "block" that contains the


< prev index next >