|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface AlphaTransactionalObject
This is the interface placed on the POJO's that want to participate in the alpha STM.
In most cases a user of the library is not going to worry bout this interface. Instrumentation is going to do all that work based on annotations.
| Method Summary | |
|---|---|
AlphaTranlocal |
___load()
Loads the most recently committed AlphaTranlocal. |
AlphaTranlocal |
___load(long readVersion)
Loads a readonly AlphaTranlocal with a version equal or smaller than readVersion. |
AlphaTranlocal |
___openForCommutingOperation()
Opens this AlphaTransactionalObject for a commuting operation. |
AlphaTranlocal |
___openUnconstructed()
Creates a fresh AlphaTranlocal. |
RegisterRetryListenerResult |
___registerRetryListener(org.multiverse.api.latches.Latch listener,
long wakeupVersion)
Registers a listener for retrying (the condition variable version for STM's). |
void |
___storeInitial(AlphaTranlocal tranlocal,
long writeVersion)
The store that is executed after a transactional object is constructed. |
org.multiverse.api.Listeners |
___storeUpdate(AlphaTranlocal tranlocal,
long writeVersion,
boolean releaseLock)
Stores the the content and releases the lock. |
| Methods inherited from interface org.multiverse.api.commitlock.CommitLock |
|---|
___getLockOwner, ___releaseLock, ___tryLock |
| Method Detail |
|---|
AlphaTranlocal ___load()
AlphaTranlocal ___load(long readVersion)
AlphaTranlocal with a version equal or smaller than readVersion. It is very important
for the implementation to not to return a too old version. If this happens, the system could start to suffer from
lost updates (not seeing changes you should have seen).
readVersion - the version of the Tranlocal to read.
org.multiverse.api.exceptions.ReadConflict - if the system wasn't able to load the Tranlocal.
org.multiverse.api.Listeners ___storeUpdate(AlphaTranlocal tranlocal,
long writeVersion,
boolean releaseLock)
tranlocal - the Tranlocal to storeAndReleaseLock.writeVersion - the version to storeAndReleaseLock the Tranlocal with.releaseLock - is the lock should be released immediately after the write. This
functionality is needed for the quickReleaseWriteLocks optimization.
void ___storeInitial(AlphaTranlocal tranlocal,
long writeVersion)
___storeUpdate(AlphaTranlocal, long, boolean) needs to be used.
tranlocal - the tranlocal to store.writeVersion - the version of the write.AlphaTranlocal ___openUnconstructed()
AlphaTranlocal ___openForCommutingOperation()
RegisterRetryListenerResult ___registerRetryListener(org.multiverse.api.latches.Latch listener,
long wakeupVersion)
listener - the Latch to registerLifecycleListener.wakeupVersion - the minimum version to wake up for.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||