AbstractOwnableSynchronizer (Java SE 9 & JDK 9 ) (original) (raw)
- java.util.concurrent.locks.AbstractOwnableSynchronizer
All Implemented Interfaces:
[Serializable](../../../../java/io/Serializable.html "interface in java.io")
Direct Known Subclasses:[AbstractQueuedLongSynchronizer](../../../../java/util/concurrent/locks/AbstractQueuedLongSynchronizer.html "class in java.util.concurrent.locks")
,[AbstractQueuedSynchronizer](../../../../java/util/concurrent/locks/AbstractQueuedSynchronizer.html "class in java.util.concurrent.locks")
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. TheAbstractOwnableSynchronizer
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:
Serialized Form
Constructor Summary
Constructors
Modifier Constructor Description protected AbstractOwnableSynchronizer() Empty constructor for use by subclasses. Method Summary
All Methods Instance Methods Concrete Methods
Modifier and Type Method Description protected Thread getExclusiveOwnerThread() Returns the thread last set by setExclusiveOwnerThread, or null if never set. protected void setExclusiveOwnerThread(Thread thread) Sets the thread that currently owns exclusive access. * ### Methods inherited from class java.lang.[Object](../../../../java/lang/Object.html "class in java.lang") `[clone](../../../../java/lang/Object.html#clone--), [equals](../../../../java/lang/Object.html#equals-java.lang.Object-), [finalize](../../../../java/lang/Object.html#finalize--), [getClass](../../../../java/lang/Object.html#getClass--), [hashCode](../../../../java/lang/Object.html#hashCode--), [notify](../../../../java/lang/Object.html#notify--), [notifyAll](../../../../java/lang/Object.html#notifyAll--), [toString](../../../../java/lang/Object.html#toString--), [wait](../../../../java/lang/Object.html#wait--), [wait](../../../../java/lang/Object.html#wait-long-), [wait](../../../../java/lang/Object.html#wait-long-int-)`
Constructor Detail
* #### AbstractOwnableSynchronizer protected AbstractOwnableSynchronizer() Empty constructor for use by subclasses.
Method Detail
* #### setExclusiveOwnerThread protected final void setExclusiveOwnerThread([Thread](../../../../java/lang/Thread.html "class in java.lang") 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](../../../../java/lang/Thread.html "class in java.lang") 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
Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2017, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.