Class AbstractOwnableSynchronizer
java.lang.Object
java.util.concurrent.locks.AbstractOwnableSynchronizer
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
-
AbstractQueuedLongSynchronizer
,AbstractQueuedSynchronizer
public abstract class AbstractOwnableSynchronizer extends Object implements Serializable
A synchronizer that may be exclusively owned by a thread. This class provides a basis for creating locks and related synchronizers that may entail a notion of ownership. The
AbstractOwnableSynchronizer
class itself does not manage or use this information. However, subclasses and tools may use appropriately maintained values to help control and monitor access and provide diagnostics.- Since:
- 1.6
- See Also:
Constructor Summary
Modifier | Constructor | Description |
---|---|---|
protected |
Empty constructor for use by subclasses. |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
protected final Thread |
getExclusiveOwnerThread() |
Returns the thread last set by setExclusiveOwnerThread , or null if never set. |
protected final void |
setExclusiveOwnerThread |
Sets the thread that currently owns exclusive access. |
Constructor Details
AbstractOwnableSynchronizer
protected AbstractOwnableSynchronizer()
Empty constructor for use by subclasses.
Method Details
setExclusiveOwnerThread
protected final void setExclusiveOwnerThread(Thread thread)
Sets the thread that currently owns exclusive access. A
null
argument indicates that no thread owns access. This method does not otherwise impose any synchronization or volatile
field accesses.- Parameters:
-
thread
- the owner thread
getExclusiveOwnerThread
protected final Thread getExclusiveOwnerThread()
Returns the thread last set by
setExclusiveOwnerThread
, or null
if never set. This method does not otherwise impose any synchronization or volatile
field accesses.- Returns:
- the owner thread
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/locks/AbstractOwnableSynchronizer.html