Atomic64< T > Class Template Reference

#include <private_ge_sys_atomic.h>

Public Member Functions

Get ()
 
void Set (T new_value)
 
CompareAndSwap (T new_value, T compare)
 
Bool TryCompareAndSwap (T new_value, T compare)
 
Swap (T new_value)
 
SwapAdd (T add)
 
SwapIncrement ()
 
SwapDecrement ()
 
void UnsafeAdd (T add)
 
void UnsafeIncrement ()
 
void UnsafeDecrement ()
 

Static Public Member Functions

static T Swap (volatile T *v, T new_value)
 
static T SwapAdd (volatile T *v, T add)
 
static T SwapIncrement (volatile T *v)
 
static T SwapDecrement (volatile T *v)
 
static T SwapIncrement (Atomic64 *v)
 
static T SwapDecrement (Atomic64 *v)
 

Private Attributes

volatile T value
 

Member Function Documentation

◆ Get()

T Get ( )

◆ Set()

void Set ( new_value)

◆ CompareAndSwap()

T CompareAndSwap ( new_value,
compare 
)

◆ TryCompareAndSwap()

Bool TryCompareAndSwap ( new_value,
compare 
)

◆ Swap() [1/2]

T Swap ( new_value)

◆ Swap() [2/2]

static T Swap ( volatile T *  v,
new_value 
)
static

◆ SwapAdd() [1/2]

T SwapAdd ( add)

◆ SwapIncrement() [1/3]

T SwapIncrement ( )

◆ SwapDecrement() [1/3]

T SwapDecrement ( )

◆ SwapAdd() [2/2]

static T SwapAdd ( volatile T *  v,
add 
)
static

◆ SwapIncrement() [2/3]

static T SwapIncrement ( volatile T *  v)
static

◆ SwapDecrement() [2/3]

static T SwapDecrement ( volatile T *  v)
static

◆ SwapIncrement() [3/3]

static T SwapIncrement ( Atomic64< T > *  v)
static

◆ SwapDecrement() [3/3]

static T SwapDecrement ( Atomic64< T > *  v)
static

◆ UnsafeAdd()

void UnsafeAdd ( add)

◆ UnsafeIncrement()

void UnsafeIncrement ( )

◆ UnsafeDecrement()

void UnsafeDecrement ( )

Member Data Documentation

◆ value

volatile T value
private