src/share/vm/gc_implementation/g1/concurrentMark.hpp
Print this page
rev 4459 : 8005032: G1: Cleanup serial reference processing closures in concurrent marking
Summary: Reuse the parallel reference processing oop closures during serial reference processing.
Reviewed-by: brutisso
rev 4460 : 8009536: G1: Apache Lucene hang during reference processing
Summary: In CMTask::do_marking_step(), Skip offering termination and entering the first and second synchronization barriers if called from a serial context, i.e. the VM thread.
Reviewed-by: brutisso, tschatzl
*** 1115,1125 ****
// The main method of this class which performs a marking step
// trying not to exceed the given duration. However, it might exit
// prematurely, according to some conditions (i.e. SATB buffers are
// available for processing).
! void do_marking_step(double target_ms, bool do_stealing, bool do_termination);
// These two calls start and stop the timer
void record_start_time() {
_elapsed_time_ms = os::elapsedTime() * 1000.0;
}
--- 1115,1127 ----
// The main method of this class which performs a marking step
// trying not to exceed the given duration. However, it might exit
// prematurely, according to some conditions (i.e. SATB buffers are
// available for processing).
! void do_marking_step(double target_ms,
! bool do_termination,
! bool is_serial);
// These two calls start and stop the timer
void record_start_time() {
_elapsed_time_ms = os::elapsedTime() * 1000.0;
}