Top


定義場所(file name)

hotspot/src/share/vm/runtime/objectMonitor.inline.hpp

名前(function name)

inline bool ObjectMonitor::check(TRAPS) {

本体部(body)

  {- -------------------------------------------
  (1) カレントスレッドがロックを握っていれば true をリターンする.
      そうでなければ, ObjectMonitor::check_slow() を呼んで 
      IllegalMonitorStateException を pending_exception フィールドにセットした後, 
      false をリターンする.
      ---------------------------------------- -}

      if (THREAD != _owner) {
        if (THREAD->is_lock_owned((address) _owner)) {
          _owner = THREAD;  // regain ownership of inflated monitor
          OwnerIsThread = 1 ;
          assert (_recursions == 0, "invariant") ;
        } else {
          check_slow(THREAD);
          return false;
        }
      }
      return true;
    }

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