|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sleepycat.je.txn.Lock
public class Lock
A Lock embodies the lock state of a NodeId. It includes a set of owners and a list of waiters.
Constructor Summary | |
---|---|
Lock(Long nodeId)
Create a Lock. |
Method Summary | |
---|---|
(package private) void |
demote(Locker locker)
Downgrade a write lock to a read lock. |
(package private) void |
flushWaiter(Locker locker,
MemoryBudget mb)
Remove this locker from the waiter list. |
(package private) Long |
getNodeId()
|
(package private) Set |
getOwnersClone()
Get a new Set of the owners. |
(package private) List |
getWaitersListClone()
Get a list of waiters for debugging and error messages. |
(package private) Locker |
getWriteOwnerLocker()
Return the locker that has a write ownership on this lock. |
(package private) boolean |
isOwnedWriteLock(Locker locker)
Return true if locker is an owner of this Lock and this is a write lock. |
(package private) boolean |
isOwner(Locker locker,
LockType lockType)
Return true if locker is an owner of this Lock for lockType, false otherwise. |
(package private) boolean |
isWaiter(Locker locker)
Return true if locker is a waiter on this Lock. |
(package private) LockGrantType |
lock(LockType requestType,
Locker locker,
boolean nonBlockingRequest,
MemoryBudget mb)
Attempts to acquire the lock and returns the LockGrantType. |
(package private) int |
nOwners()
|
(package private) int |
nWaiters()
|
(package private) Set |
release(Locker locker,
MemoryBudget mb)
Releases a lock and moves the next waiter(s) to the owners. |
String |
toString()
Debug dumper. |
(package private) LockType |
transfer(Locker currentLocker,
Locker destLocker,
MemoryBudget mb)
Transfer a lock from one transaction to another. |
(package private) LockType |
transferMultiple(Locker currentLocker,
Locker[] destLockers,
MemoryBudget mb)
Transfer a lock from one transaction to many others. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
Lock(Long nodeId)
Method Detail |
---|
Long getNodeId()
List getWaitersListClone()
void flushWaiter(Locker locker, MemoryBudget mb)
Set getOwnersClone()
boolean isOwner(Locker locker, LockType lockType)
boolean isOwnedWriteLock(Locker locker)
boolean isWaiter(Locker locker)
int nWaiters()
int nOwners()
LockGrantType lock(LockType requestType, Locker locker, boolean nonBlockingRequest, MemoryBudget mb)
Set release(Locker locker, MemoryBudget mb)
void demote(Locker locker)
LockType transfer(Locker currentLocker, Locker destLocker, MemoryBudget mb) throws DatabaseException
DatabaseException
LockType transferMultiple(Locker currentLocker, Locker[] destLockers, MemoryBudget mb) throws DatabaseException
DatabaseException
Locker getWriteOwnerLocker()
public String toString()
toString
in class Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |