Top


定義場所(file name)

hotspot/src/share/vm/prims/unsafe.cpp

名前(function name)

UNSAFE_ENTRY(void, Unsafe_Park(JNIEnv *env, jobject unsafe, jboolean isAbsolute, jlong time))

本体部(body)

  {- -------------------------------------------
  (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.