< prev index next >

src/hotspot/share/gc/cms/cmsHeap.cpp

Print this page




 223                                 ScanningOption so,
 224                                 bool only_strong_roots,
 225                                 OopsInGenClosure* root_closure,
 226                                 CLDClosure* cld_closure) {
 227   MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations);
 228   CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure;
 229 
 230   process_roots(scope, so, root_closure, cld_closure, weak_cld_closure, &mark_code_closure);
 231 
 232   if (young_gen_as_roots &&
 233       _process_strong_tasks->try_claim_task(GCH_PS_younger_gens)) {
 234     root_closure->set_generation(young_gen());
 235     young_gen()->oop_iterate(root_closure);
 236     root_closure->reset_generation();
 237   }
 238 
 239   _process_strong_tasks->all_tasks_completed(scope->n_threads());
 240 }
 241 
 242 void CMSHeap::gc_prologue(bool full) {
 243   always_do_update_barrier = false;
 244   GenCollectedHeap::gc_prologue(full);
 245 };
 246 
 247 void CMSHeap::gc_epilogue(bool full) {
 248   GenCollectedHeap::gc_epilogue(full);
 249   always_do_update_barrier = true;
 250 };
 251 
 252 GrowableArray<GCMemoryManager*> CMSHeap::memory_managers() {
 253   GrowableArray<GCMemoryManager*> memory_managers(2);
 254   memory_managers.append(_young_manager);
 255   memory_managers.append(_old_manager);
 256   return memory_managers;
 257 }
 258 
 259 GrowableArray<MemoryPool*> CMSHeap::memory_pools() {
 260   GrowableArray<MemoryPool*> memory_pools(3);
 261   memory_pools.append(_eden_pool);
 262   memory_pools.append(_survivor_pool);
 263   memory_pools.append(_old_pool);
 264   return memory_pools;
 265 }


 223                                 ScanningOption so,
 224                                 bool only_strong_roots,
 225                                 OopsInGenClosure* root_closure,
 226                                 CLDClosure* cld_closure) {
 227   MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations);
 228   CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure;
 229 
 230   process_roots(scope, so, root_closure, cld_closure, weak_cld_closure, &mark_code_closure);
 231 
 232   if (young_gen_as_roots &&
 233       _process_strong_tasks->try_claim_task(GCH_PS_younger_gens)) {
 234     root_closure->set_generation(young_gen());
 235     young_gen()->oop_iterate(root_closure);
 236     root_closure->reset_generation();
 237   }
 238 
 239   _process_strong_tasks->all_tasks_completed(scope->n_threads());
 240 }
 241 
 242 void CMSHeap::gc_prologue(bool full) {

 243   GenCollectedHeap::gc_prologue(full);
 244 };
 245 
 246 void CMSHeap::gc_epilogue(bool full) {
 247   GenCollectedHeap::gc_epilogue(full);

 248 };
 249 
 250 GrowableArray<GCMemoryManager*> CMSHeap::memory_managers() {
 251   GrowableArray<GCMemoryManager*> memory_managers(2);
 252   memory_managers.append(_young_manager);
 253   memory_managers.append(_old_manager);
 254   return memory_managers;
 255 }
 256 
 257 GrowableArray<MemoryPool*> CMSHeap::memory_pools() {
 258   GrowableArray<MemoryPool*> memory_pools(3);
 259   memory_pools.append(_eden_pool);
 260   memory_pools.append(_survivor_pool);
 261   memory_pools.append(_old_pool);
 262   return memory_pools;
 263 }
< prev index next >