comparison src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp @ 17935:7384f6a12fc1

8038212: Method::is_valid_method() check has performance regression impact for stackwalking Summary: Only prune metaspace virtual spaces at safepoint so walking them is safe outside a safepoint. Reviewed-by: mgerdin, mgronlun, hseigel, stefank
author coleenp
date Thu, 15 May 2014 18:23:26 -0400
parents 9fdaa79b0c27
children 78bbf4d43a14
comparison
equal deleted inserted replaced
17934:366c198c896d 17935:7384f6a12fc1
6361 } 6361 }
6362 verify_work_stacks_empty(); 6362 verify_work_stacks_empty();
6363 verify_overflow_empty(); 6363 verify_overflow_empty();
6364 6364
6365 if (should_unload_classes()) { 6365 if (should_unload_classes()) {
6366 ClassLoaderDataGraph::purge(); 6366 // Delay purge to the beginning of the next safepoint. Metaspace::contains
6367 // requires that the virtual spaces are stable and not deleted.
6368 ClassLoaderDataGraph::set_should_purge(true);
6367 } 6369 }
6368 6370
6369 _intra_sweep_timer.stop(); 6371 _intra_sweep_timer.stop();
6370 _intra_sweep_estimate.sample(_intra_sweep_timer.seconds()); 6372 _intra_sweep_estimate.sample(_intra_sweep_timer.seconds());
6371 6373