hotspot/src/share/vm/gc/g1/g1CollectedHeap.cpp
changeset 31598 d48b9b0a06bf
parent 31592 43f48e165466
parent 31597 f63dde8cc8f7
child 31632 d041b34dd3e7
child 31631 4536cf7bc89f
equal deleted inserted replaced
31596:64bfaa6d10a9 31598:d48b9b0a06bf
  2485   // We need to clear the "in_progress" flag in the CM thread before
  2485   // We need to clear the "in_progress" flag in the CM thread before
  2486   // we wake up any waiters (especially when ExplicitInvokesConcurrent
  2486   // we wake up any waiters (especially when ExplicitInvokesConcurrent
  2487   // is set) so that if a waiter requests another System.gc() it doesn't
  2487   // is set) so that if a waiter requests another System.gc() it doesn't
  2488   // incorrectly see that a marking cycle is still in progress.
  2488   // incorrectly see that a marking cycle is still in progress.
  2489   if (concurrent) {
  2489   if (concurrent) {
  2490     _cmThread->clear_in_progress();
  2490     _cmThread->set_idle();
  2491   }
  2491   }
  2492 
  2492 
  2493   // This notify_all() will ensure that a thread that called
  2493   // This notify_all() will ensure that a thread that called
  2494   // System.gc() with (with ExplicitGCInvokesConcurrent set or not)
  2494   // System.gc() with (with ExplicitGCInvokesConcurrent set or not)
  2495   // and it's waiting for a full GC to finish will be woken up. It is
  2495   // and it's waiting for a full GC to finish will be woken up. It is