class ChainLockTransactionCommon
Defined at line 26 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
ChainLockTransactionCommon is a base class that provides chain lock transaction facilities,
including transaction token and saved state types, reserved token values, and the global token
generator. This base class factors out common functionality from ChainLockTransactionBase that is
not dependent on the runtime environment. ChainLockTransactionBase provides additional
functionality and simplifies adapting chain locks to the runtime environment.
Public Members
static const uint64_t kUnlockedTokenValue
static const uint64_t kReservedTokenValues
static const uint64_t kInitialTokenValue
static const uint64_t kMaxTokenValue
static DoneType Done
Public Methods
void ~ChainLockTransactionCommon ()
Defined at line 28 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
void ChainLockTransactionCommon (const ChainLockTransactionCommon & )
Defined at line 30 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
ChainLockTransactionCommon & operator= (const ChainLockTransactionCommon & )
Defined at line 31 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
void ChainLockTransactionCommon (ChainLockTransactionCommon && )
Defined at line 32 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
ChainLockTransactionCommon & operator= (ChainLockTransactionCommon && )
Defined at line 33 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
Token token ()
Defined at line 66 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
Protected Methods
void ChainLockTransactionCommon ()
Defined at line 125 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
Token NextToken ()
Defined at line 127 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
Token ReservedToken (size_t reserved_index)
Defined at line 131 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
State state ()
Defined at line 142 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
void SetState (State state)
Defined at line 143 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
Enumerations
enum Action
| Name | Value |
|---|---|
| Backoff | 0 |
| Restart | 1 |
Defined at line 92 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
enum State
| Name | Value |
|---|---|
| Started | 0 |
| Finalized | 1 |
| Complete | 2 |
Defined at line 136 of file ../../zircon/system/ulib/concurrent/include/lib/concurrent/chainlock_transaction_common.h
Records
Friends
template <typename Derivedbool DebugAccountingEnabledbool TracingEnabled>
class ChainLockTransaction