Interpreter (Template Interpreter, C++ Interpreter) の場合, fast-path が失敗すると InterpreterRuntime::monitorenter() による slow-path 処理が実行される.
ただし, 実際には InterpreterRuntime::monitorenter() 内ではほとんど処理は行っておらず, 単に ObjectSynchronizer::fast_enter() または ObjectSynchronizer::slow_enter() にフォールバックするだけ (See: here for details).
InterpreterRuntime::monitorenter() -> UseBiasedLocking オプションに応じてどちらかを呼び出す * UseBiasedLocking オプションが指定されている場合: -> ObjectSynchronizer::fast_enter() -> (See: here for details) * 〃 が指定されていない場合: -> ObjectSynchronizer::slow_enter() -> (See: here for details)
See: here for details
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.