src/hotspot/share/gc/shared/generation.cpp
changeset 59153 1152339c298a
parent 59053 ba6c248cae19
equal deleted inserted replaced
59152:59272e9e0635 59153:1152339c298a
   287 void Generation::object_iterate(ObjectClosure* cl) {
   287 void Generation::object_iterate(ObjectClosure* cl) {
   288   GenerationObjIterateClosure blk(cl);
   288   GenerationObjIterateClosure blk(cl);
   289   space_iterate(&blk);
   289   space_iterate(&blk);
   290 }
   290 }
   291 
   291 
   292 class GenerationSafeObjIterateClosure : public SpaceClosure {
       
   293  private:
       
   294   ObjectClosure* _cl;
       
   295  public:
       
   296   virtual void do_space(Space* s) {
       
   297     s->safe_object_iterate(_cl);
       
   298   }
       
   299   GenerationSafeObjIterateClosure(ObjectClosure* cl) : _cl(cl) {}
       
   300 };
       
   301 
       
   302 void Generation::safe_object_iterate(ObjectClosure* cl) {
       
   303   GenerationSafeObjIterateClosure blk(cl);
       
   304   space_iterate(&blk);
       
   305 }
       
   306 
       
   307 #if INCLUDE_SERIALGC
   292 #if INCLUDE_SERIALGC
   308 
   293 
   309 void Generation::prepare_for_compaction(CompactPoint* cp) {
   294 void Generation::prepare_for_compaction(CompactPoint* cp) {
   310   // Generic implementation, can be specialized
   295   // Generic implementation, can be specialized
   311   CompactibleSpace* space = first_compaction_space();
   296   CompactibleSpace* space = first_compaction_space();