lgraph_atomic

Implementation of atomic operations, used in lgraph_traversal.

namespace lgraph_api

Functions

template<class T>
inline bool cas(T *ptr, T oldv, T newv)
template<class T>
inline bool write_min(T *a, T b)
template<class T>
inline bool write_max(T *a, T b)
template<class T>
inline void write_add(T *a, T b)
inline void write_add(uint64_t *a, uint64_t b)
inline void write_add(uint32_t *a, uint32_t b)
inline void write_add(int64_t *a, int64_t b)
inline void write_add(int32_t *a, int32_t b)
template<class T>
inline void write_sub(T *a, T b)
inline void write_sub(uint64_t *a, uint64_t b)
inline void write_sub(uint32_t *a, uint32_t b)
inline void write_sub(int64_t *a, int64_t b)
inline void write_sub(int32_t *a, int32_t b)