cds  1.4.0
Public Types | Public Member Functions
cds::gc::HRC::atomic_marked_ptr< MarkedPtr > Class Template Reference

Atomic marked pointer. More...

#include <cds/gc/hrc.h>

Public Types

typedef MarkedPtr marked_ptr
 Marked pointer type.
 

Public Member Functions

marked_ptr load (std::memory_order order) const noexcept()
 Read reference value.
 
void store (marked_ptr pNew, std::memory_order order) noexcept()
 Store new value to reference.
 
void store (typename marked_ptr::pointer_type pNew, std::memory_order order) noexcept()
 Store new value to reference.
 
bool compare_exchange_weak (marked_ptr &pOld, marked_ptr pNew, std::memory_order mo_success, std::memory_order mo_fail) noexcept()
 Updates atomic reference from current value pOld to new value pNew (weak CAS) More...
 
bool compare_exchange_strong (marked_ptr &pOld, marked_ptr pNew, std::memory_order mo_success, std::memory_order mo_fail) noexcept()
 Updates atomic reference from current value pOld to new value pNew (strong CAS) More...
 

Detailed Description

template<typename MarkedPtr>
class cds::gc::HRC::atomic_marked_ptr< MarkedPtr >

Atomic marked pointer.

Member Function Documentation

template<typename MarkedPtr >
bool cds::gc::HRC::atomic_marked_ptr< MarkedPtr >::compare_exchange_strong ( marked_ptr pOld,
marked_ptr  pNew,
std::memory_order  mo_success,
std::memory_order  mo_fail 
)
inlinenoexcept

Updates atomic reference from current value pOld to new value pNew (strong CAS)

May be used when concurrent updates are possible

T - class derived from container_node type

template<typename MarkedPtr >
bool cds::gc::HRC::atomic_marked_ptr< MarkedPtr >::compare_exchange_weak ( marked_ptr pOld,
marked_ptr  pNew,
std::memory_order  mo_success,
std::memory_order  mo_fail 
)
inlinenoexcept

Updates atomic reference from current value pOld to new value pNew (weak CAS)

May be used when concurrent updates are possible

T - class derived from container_node type


The documentation for this class was generated from the following file:

cds 1.4.0 Developed by Maxim Khiszinsky aka khizmax 2007 - 2012
Autogenerated Mon May 20 2013 00:37:58 by Doxygen 1.8.3.1