< prev index next >

src/hotspot/share/gc/g1/g1CollectedHeap.cpp

Print this page

        

*** 2898,2911 **** workers()->active_workers(), Threads::number_of_non_daemon_threads()); active_workers = workers()->update_active_workers(active_workers); log_info(gc,task)("Using %u workers of %u for evacuation", active_workers, workers()->total_workers()); G1MonitoringScope ms(g1mm(), false /* full_gc */, collector_state()->yc_type() == Mixed /* all_memory_pools_affected */); ! G1HeapTransition heap_transition(this); size_t heap_used_bytes_before_gc = used(); // Don't dynamically change the number of GC threads this early. A value of // 0 is used to indicate serial work. When parallel work is done, --- 2898,2916 ---- workers()->active_workers(), Threads::number_of_non_daemon_threads()); active_workers = workers()->update_active_workers(active_workers); log_info(gc,task)("Using %u workers of %u for evacuation", active_workers, workers()->total_workers()); + if(gc_cause() == GCCause::_java_lang_system_gc) { + G1MonitoringScope ms(g1mm(), + true /* full_gc */, + collector_state()->yc_type() == Mixed /* all_memory_pools_affected */); + } else { G1MonitoringScope ms(g1mm(), false /* full_gc */, collector_state()->yc_type() == Mixed /* all_memory_pools_affected */); ! } G1HeapTransition heap_transition(this); size_t heap_used_bytes_before_gc = used(); // Don't dynamically change the number of GC threads this early. A value of // 0 is used to indicate serial work. When parallel work is done,
< prev index next >