Static Public Member Functions | |
static ASPOSECPP_SHARED_API int32_t | Increment (int32_t &location) |
static ASPOSECPP_SHARED_API int64_t | Increment (int64_t &location) |
static ASPOSECPP_SHARED_API int32_t | Decrement (int32_t &location) |
static ASPOSECPP_SHARED_API int64_t | Decrement (int64_t &location) |
static ASPOSECPP_SHARED_API int32_t | Add (int32_t &location1, int32_t value) |
static ASPOSECPP_SHARED_API int64_t | Add (int64_t &location1, int64_t value) |
static ASPOSECPP_SHARED_API int64_t | Read (int64_t &location1) |
static ASPOSECPP_SHARED_API int32_t | ExchangeAdd (int32_t &location1, int32_t value) |
static ASPOSECPP_SHARED_API int64_t | ExchangeAdd (int64_t &location1, int64_t value) |
template<typename T > | |
static std::enable_if< IsSupportedInt< T >, T >::type | Exchange (T &location1, T value) |
template<typename T > | |
static std::enable_if<!IsSupportedInt< T >, T >::type | Exchange (T &location1, T value) |
template<typename T > | |
static std::enable_if< IsSupportedInt< T >, T >::type | CompareExchange (T &location1, T value, T comparand) |
template<typename T > | |
static std::enable_if<!IsSupportedInt< T >, T >::type | CompareExchange (T &location1, T value, T comparand) |
static ASPOSECPP_SHARED_API int32_t | CompareExchange (int32_t &location1, int32_t value, int32_t comparand, bool &succeeded) |
Provides API for thread-safe operations. This is a static type with no instance services. You should never create instances of it by any means.
|
static |
Increases value atomically.
location1 | Variable reference to increase. |
value | Value to add to location1 . |
|
static |
Increases value atomically.
location1 | Variable reference to increase. |
value | Value to add to location1 . |
|
inlinestatic |
Compare-exchanges value on variable: checks if variable is equal to specific value and stores the new value only if stored value matches expected.
T | Variable type. |
location1 | Variable reference to change. |
value | Value to store. |
comparand | Value to compare variable's value to before exchanging. |
|
inlinestatic |
Compare-exchanges value on variable: checks if variable is equal to specific value and stores the new value only if stored value matches expected. Not implemented.
T | Variable type. |
location1 | Variable reference to change. |
value | Value to store. |
comparand | Value to compare variable's value to before exchanging. |
|
static |
Compare-exchanges value on variable: checks if variable is equal to specific value and stores the new value only if stored value matches expected.
location1 | Variable reference to change. |
value | Value to store. |
comparand | Value to compare variable's value to before exchanging. |
succeeded | Reference to variable which is set to true if exchange took place and to false otherwise. |
|
static |
Decrements value atomically.
location | Variable reference to decrement. |
|
static |
Decrements value atomically.
location | Variable reference to decrement. |
|
inlinestatic |
Exchanges value on variable: stores new value and returns the value variable had immediately before storing.
T | Variable type. |
location1 | Variable reference to change. |
value | Value to store. |
|
inlinestatic |
Exchanges value on variable: stores new value and returns the value variable had immediately before storing. Not implemented.
T | Variable type. |
location1 | Variable reference to change. |
value | Value to store. |
|
static |
Increases value atomically via exchange-add procedure.
location1 | Variable reference to increase. |
value | Value to add to location1 . |
|
static |
Increases value atomically via exchange-add procedure.
location1 | Variable reference to increase. |
value | Value to add to location1 . |
|
static |
Increments value atomically.
location | Variable reference to increment. |
|
static |
Increments value atomically.
location | Variable reference to increment. |
|
static |
Returns a 64-bit value, loaded as an atomic operation.
location1 | The 64-bit value to be loaded. |