Top


定義場所(file name)

hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp

名前(function name)

void G1CollectedHeap::reset_free_regions_coming() {

本体部(body)

  {- -------------------------------------------
  (1) _free_regions_coming フィールドを false に戻す. 
      その後, SecondaryFreeList_lock に対して Monitor::notify_all() を呼んで 
      もし待っているスレッドがいれば起床させておく.
      (See: G1CollectedHeap::wait_while_free_regions_coming())
      ---------------------------------------- -}

      {
        assert(free_regions_coming(), "pre-condition");
        MutexLockerEx x(SecondaryFreeList_lock, Mutex::_no_safepoint_check_flag);
        _free_regions_coming = false;
        SecondaryFreeList_lock->notify_all();
      }

  {- -------------------------------------------
  (1) (トレース出力)
      ---------------------------------------- -}

      if (G1ConcRegionFreeingVerbose) {
        gclog_or_tty->print_cr("G1ConcRegionFreeing [cm thread] : "
                               "reset free regions coming");
      }
    }

This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.