Class CycleDetectingLockFactory.CycleDetectingReentrantLock
- java.lang.Object
-
- java.util.concurrent.locks.ReentrantLock
-
- com.google.common.util.concurrent.CycleDetectingLockFactory.CycleDetectingReentrantLock
-
- All Implemented Interfaces:
CycleDetectingLockFactory.CycleDetectingLock,java.io.Serializable,java.util.concurrent.locks.Lock
- Enclosing class:
- CycleDetectingLockFactory
final class CycleDetectingLockFactory.CycleDetectingReentrantLock extends java.util.concurrent.locks.ReentrantLock implements CycleDetectingLockFactory.CycleDetectingLock
-
-
Field Summary
Fields Modifier and Type Field Description private CycleDetectingLockFactory.LockGraphNodelockGraphNode
-
Constructor Summary
Constructors Modifier Constructor Description privateCycleDetectingReentrantLock(CycleDetectingLockFactory.LockGraphNode lockGraphNode, boolean fair)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CycleDetectingLockFactory.LockGraphNodegetLockGraphNode()booleanisAcquiredByCurrentThread()voidlock()voidlockInterruptibly()booleantryLock()booleantryLock(long timeout, java.util.concurrent.TimeUnit unit)voidunlock()
-
-
-
Field Detail
-
lockGraphNode
private final CycleDetectingLockFactory.LockGraphNode lockGraphNode
-
-
Constructor Detail
-
CycleDetectingReentrantLock
private CycleDetectingReentrantLock(CycleDetectingLockFactory.LockGraphNode lockGraphNode, boolean fair)
-
-
Method Detail
-
getLockGraphNode
public CycleDetectingLockFactory.LockGraphNode getLockGraphNode()
- Specified by:
getLockGraphNodein interfaceCycleDetectingLockFactory.CycleDetectingLock- Returns:
- the
CycleDetectingLockFactory.LockGraphNodeassociated with this lock.
-
isAcquiredByCurrentThread
public boolean isAcquiredByCurrentThread()
- Specified by:
isAcquiredByCurrentThreadin interfaceCycleDetectingLockFactory.CycleDetectingLock- Returns:
trueif the current thread has acquired this lock.
-
lock
public void lock()
- Specified by:
lockin interfacejava.util.concurrent.locks.Lock- Overrides:
lockin classjava.util.concurrent.locks.ReentrantLock
-
lockInterruptibly
public void lockInterruptibly() throws java.lang.InterruptedException- Specified by:
lockInterruptiblyin interfacejava.util.concurrent.locks.Lock- Overrides:
lockInterruptiblyin classjava.util.concurrent.locks.ReentrantLock- Throws:
java.lang.InterruptedException
-
tryLock
public boolean tryLock()
- Specified by:
tryLockin interfacejava.util.concurrent.locks.Lock- Overrides:
tryLockin classjava.util.concurrent.locks.ReentrantLock
-
tryLock
public boolean tryLock(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException- Specified by:
tryLockin interfacejava.util.concurrent.locks.Lock- Overrides:
tryLockin classjava.util.concurrent.locks.ReentrantLock- Throws:
java.lang.InterruptedException
-
unlock
public void unlock()
- Specified by:
unlockin interfacejava.util.concurrent.locks.Lock- Overrides:
unlockin classjava.util.concurrent.locks.ReentrantLock
-
-