LockSupport.park

Disables the current thread for thread scheduling purposes unless the permit is available.

<p>If the permit is available then it is consumed and the call returns immediately; otherwise the current thread becomes disabled for thread scheduling purposes and lies dormant until one of three things happens:

<ul> <li>Some other thread invokes {@link #unpark unpark} with the current thread as the target; or

<li>Some other thread {@linkplain Thread#interrupt interrupts} the current thread; or

<li>The call spuriously (that is, for no reason) returns. </ul>

<p>This method does <em>not</em> report which of these caused the method to return. Callers should re-check the conditions which caused the thread to park in the first place. Callers may also determine, for example, the interrupt status of the thread upon return.

@param blocker the synchronization object responsible for this thread parking

  1. void park()
  2. void park(Duration time)
  3. void park(Object blocker)
    class LockSupport
    static
    void
    park
    (
    Object blocker
    )
  4. void park(Object blocker, Duration time)

Meta