mirror of
https://github.com/OpenHFT/Chronicle-Map.git
synced 2021-09-13 01:26:12 +00:00
Add HashEntryStages.closeEntry()
This commit is contained in:
@@ -62,12 +62,16 @@ public abstract class HashEntryStages<K> implements HashEntry<K>, ChecksumEntry
|
||||
keySizeOffset = s.entrySpaceOffset + pos * hh.h().chunkSize;
|
||||
}
|
||||
|
||||
public abstract void closeEntryOffset();
|
||||
|
||||
public long keySize = -1;
|
||||
|
||||
public void initKeySize(long keySize) {
|
||||
this.keySize = keySize;
|
||||
}
|
||||
|
||||
public abstract void closeKeySize();
|
||||
|
||||
public long keyOffset = -1;
|
||||
|
||||
public void initKeyOffset(long keyOffset) {
|
||||
@@ -91,6 +95,13 @@ public abstract class HashEntryStages<K> implements HashEntry<K>, ChecksumEntry
|
||||
initKeyOffset(keyOffset);
|
||||
}
|
||||
|
||||
public void closeEntry() {
|
||||
closePos();
|
||||
closeEntryOffset();
|
||||
closeKeySize();
|
||||
closeKeyOffset();
|
||||
}
|
||||
|
||||
public void writeNewEntry(long pos, Data<?> key) {
|
||||
initPos(pos);
|
||||
initKeySize(key.size());
|
||||
|
||||
@@ -108,8 +108,7 @@ public class ReadLock implements InterProcessLock {
|
||||
if (s.localLockState != UNLOCKED) {
|
||||
// TODO what should close here?
|
||||
hlp.closeHashLookupPos();
|
||||
entry.closePos();
|
||||
entry.closeKeyOffset();
|
||||
entry.closeEntry();
|
||||
}
|
||||
s.readUnlockAndDecrementCount();
|
||||
s.setLocalLockState(UNLOCKED);
|
||||
|
||||
Reference in New Issue
Block a user