hotspot/src/share/vm/prims/unsafe.cpp
UNSAFE_ENTRY(void, Unsafe_Park(JNIEnv *env, jobject unsafe, jboolean isAbsolute, jlong time))
{- -------------------------------------------
(1) (現状では何もしない) (See: UnsafeWrapper)
---------------------------------------- -}
UnsafeWrapper("Unsafe_Park");
{- -------------------------------------------
(1) (DTrace のフック点)
---------------------------------------- -}
HS_DTRACE_PROBE3(hotspot, thread__park__begin, thread->parker(), (int) isAbsolute, time);
{- -------------------------------------------
(1)
---------------------------------------- -}
JavaThreadParkedState jtps(thread, time != 0);
{- -------------------------------------------
(1) 処理対象のスレッドの parker() に対して Parker::park() を呼び出し, 待機状態に入る.
---------------------------------------- -}
thread->parker()->park(isAbsolute != 0, time);
{- -------------------------------------------
(1) (DTrace のフック点)
---------------------------------------- -}
HS_DTRACE_PROBE1(hotspot, thread__park__end, thread->parker());
UNSAFE_END
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.