981982983984985986987988989990991
return false; else { if (counter.getValue() == 1) newEntries.remove(identifiable); else counter.decrement(); return true; } } private Map.Entry<OIdentifiable, Integer> nextChangedNotRemovedSBTreeEntry(Iterator<Map.Entry<OIdentifiable, Integer>> iterator) {
109110111112113114115116117118119
return; } threadCountersHashTable.decrement(); lHolds.decrement(); assert lHolds.intValue() == 0; } public void acquireWriteLock() { final OModifiableInteger lHolds = lockHolds.get();
117118119120121122123124125126127
public void acquireWriteLock() { final OModifiableInteger lHolds = lockHolds.get(); if (lHolds.intValue() < 0) { lHolds.decrement(); return; } final WNode node = myNode.get(); node.locked = true;
141142143144145146147148149150151
while (!threadCountersHashTable.isEmpty()) ; setExclusiveOwnerThread(Thread.currentThread()); lHolds.decrement(); assert lHolds.intValue() == -1; } public void releaseWriteLock() { final OModifiableInteger lHolds = lockHolds.get();