| java.lang.Object java.util.concurrent.locks.LockSupport
LockSupport | public class LockSupport (Code) | | |
Method Summary | |
public static Object | getBlocker(Thread t) Returns the blocker object supplied to the most recent
invocation of a park method that has not yet unblocked, or null
if not blocked. | public static void | park(Object blocker) Disables the current thread for thread scheduling purposes unless the
permit is available.
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:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The call spuriously (that is, for no reason) returns.
This method does not report which of these caused the
method to return. | public static void | park() Disables the current thread for thread scheduling purposes unless the
permit is available.
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:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The call spuriously (that is, for no reason) returns.
This method does not report which of these caused the
method to return. | public static void | parkNanos(Object blocker, long nanos) Disables the current thread for thread scheduling purposes, for up to
the specified waiting time, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current
thread; or
- The specified waiting time elapses; or
- The call spuriously (that is, for no reason) returns.
This method does not report which of these caused the
method to return. | public static void | parkNanos(long nanos) Disables the current thread for thread scheduling purposes, for up to
the specified waiting time, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The specified waiting time elapses; or
- The call spuriously (that is, for no reason) returns.
This method does not report which of these caused the
method to return. | public static void | parkUntil(Object blocker, long deadline) Disables the current thread for thread scheduling purposes, until
the specified deadline, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the
current thread; or
- The specified deadline passes; or
- The call spuriously (that is, for no reason) returns.
This method does not report which of these caused the
method to return. | public static void | parkUntil(long deadline) Disables the current thread for thread scheduling purposes, until
the specified deadline, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The specified deadline passes; or
- The call spuriously (that is, for no reason) returns.
This method does not report which of these caused the
method to return. | public static void | unpark(Thread thread) Makes available the permit for the given thread, if it
was not already available. |
getBlocker | public static Object getBlocker(Thread t)(Code) | | Returns the blocker object supplied to the most recent
invocation of a park method that has not yet unblocked, or null
if not blocked. The value returned is just a momentary
snapshot -- the thread may have since unblocked or blocked on a
different blocker object.
the blocker since: 1.6 |
park | public static void park(Object blocker)(Code) | | Disables the current thread for thread scheduling purposes unless the
permit is available.
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:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The call spuriously (that is, for no reason) returns.
This method does not 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.
Parameters: blocker - the synchronization object responsible for thisthread parking since: 1.6 |
park | public static void park()(Code) | | Disables the current thread for thread scheduling purposes unless the
permit is available.
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:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The call spuriously (that is, for no reason) returns.
This method does not 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.
|
parkNanos | public static void parkNanos(Object blocker, long nanos)(Code) | | Disables the current thread for thread scheduling purposes, for up to
the specified waiting time, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current
thread; or
- The specified waiting time elapses; or
- The call spuriously (that is, for no reason) returns.
This method does not 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, or the elapsed time
upon return.
Parameters: blocker - the synchronization object responsible for thisthread parking Parameters: nanos - the maximum number of nanoseconds to wait since: 1.6 |
parkNanos | public static void parkNanos(long nanos)(Code) | | Disables the current thread for thread scheduling purposes, for up to
the specified waiting time, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The specified waiting time elapses; or
- The call spuriously (that is, for no reason) returns.
This method does not 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, or the elapsed time
upon return.
Parameters: nanos - the maximum number of nanoseconds to wait |
parkUntil | public static void parkUntil(Object blocker, long deadline)(Code) | | Disables the current thread for thread scheduling purposes, until
the specified deadline, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the
current thread; or
- The specified deadline passes; or
- The call spuriously (that is, for no reason) returns.
This method does not 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, or the current time
upon return.
Parameters: blocker - the synchronization object responsible for thisthread parking Parameters: deadline - the absolute time, in milliseconds from the Epoch,to wait until since: 1.6 |
parkUntil | public static void parkUntil(long deadline)(Code) | | Disables the current thread for thread scheduling purposes, until
the specified deadline, unless the permit is available.
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 four
things happens:
- Some other thread invokes
LockSupport.unpark unpark with the
current thread as the target; or
- Some other thread
the current thread; or
- The specified deadline passes; or
- The call spuriously (that is, for no reason) returns.
This method does not 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, or the current time
upon return.
Parameters: deadline - the absolute time, in milliseconds from the Epoch,to wait until |
unpark | public static void unpark(Thread thread)(Code) | | Makes available the permit for the given thread, if it
was not already available. If the thread was blocked on
park then it will unblock. Otherwise, its next call
to
park is guaranteed not to block. This operation
is not guaranteed to have any effect at all if the given
thread has not been started.
Parameters: thread - the thread to unpark, or null , in which casethis operation has no effect |
|
|