public void releaseReadLock() { this.lock.releaseReadLock(); }
this.generatedValuesLock.releaseReadLock();
this.generatedValuesLock.releaseReadLock();
this.generatedValuesLock.releaseReadLock();
lock.releaseReadLock(); lock = this; continue RETRYLOOP; lock.releaseReadLock(); return true; lock.releaseReadLock(); return false;
this.mapLock.releaseReadLock();
/** * {@inheritDoc} */ @Override public void unlockPendingTXRegionStates(final boolean forWrite) { if (this.pendingTXRegionStatesLock != null) { if (forWrite) { this.pendingTXRegionStatesLockOwner = null; this.pendingTXRegionStatesLock.releaseWriteLock(); } else { this.pendingTXRegionStatesLock.releaseReadLock(); } if (TXStateProxy.LOG_FINE) { final LogWriterI18n logger = InternalDistributedSystem.getLoggerI18n(); if (logger != null) { logger.info(LocalizedStrings.DEBUG, "ImageState#" + "unlockPendingTXRegionStates: " + (forWrite ? "write" : "read") + " lock released " + this.pendingTXRegionStatesLock); } } } }
this.pendingTXRegionStatesLock.releaseReadLock();
final V get(final Object key, final int hash) { if (this.count != 0) { // read-volatile // GemStone change to acquire the read lock on list updates this.listUpdateLock.attemptReadLock(-1); boolean lockAcquired = true; HashEntry<K, V> e = getFirst(hash); try { while (e != null) { if (e.getEntryHash() == hash && equalityKeyCompare(key, e)) { final V v = e.getMapValue(); if (v != null) { return v; } this.listUpdateLock.releaseReadLock(); lockAcquired = false; return readValueUnderLock(e); // recheck } e = e.getNextEntry(); } } finally { if (lockAcquired) { this.listUpdateLock.releaseReadLock(); } } } return null; }
final boolean containsKey(final Object key, final int hash) { if (this.count != 0) { // read-volatile // GemStone change to acquire the read lock on list updates this.listUpdateLock.attemptReadLock(-1); HashEntry<K, V> e = getFirst(hash); try { while (e != null) { if (e.getEntryHash() == hash && equalityKeyCompare(key, e)) { return true; } e = e.getNextEntry(); } } finally { this.listUpdateLock.releaseReadLock(); } } return false; }
final V getNoLock(final Object key, final int hash, final boolean lockListForRead) { if (this.count != 0) { // read-volatile // GemStone change to acquire the read lock on list updates if (lockListForRead) { this.listUpdateLock.attemptReadLock(-1); } HashEntry<K, V> e = getFirst(hash); try { while (e != null) { if (e.getEntryHash() == hash && equalityKeyCompare(key, e)) { return e.getMapValue(); } e = e.getNextEntry(); } } finally { if (lockListForRead) { this.listUpdateLock.releaseReadLock(); } } } return null; }
this.pendingTXRegionStatesLock.releaseReadLock();
this.suspectEntriesLock.releaseReadLock(); return false; this.suspectEntriesLock.releaseReadLock(); if (!finishedEnqueue) { psEvent.release();