The Pedigree Project 0.1
Public Member Functions | Private Attributes | List of all members
RcuPointer< T > Class Template Reference
+ Inheritance diagram for RcuPointer< T >:
+ Collaboration diagram for RcuPointer< T >:

Public Member Functions

 NOT_COPYABLE_OR_ASSIGNABLE (RcuPointer)
 
T * load (const RcuReadGuard &) const
 
T * loadForUpdate () const
 
T * exchange (T *replacement)
 

Private Attributes

T * m_Pointer = nullptr
 

Detailed Description

template<typename T>
class RcuPointer< T >

Definition at line 29 of file Rcu.h.

Member Function Documentation

◆ exchange()

template<typename T >
T * RcuPointer< T >::exchange ( T *  replacement)
inline

Serialize writers separately and retire the returned pointer.

Definition at line 44 of file Rcu.h.

◆ load()

template<typename T >
T * RcuPointer< T >::load ( const RcuReadGuard &  ) const
inline

Definition at line 34 of file Rcu.h.

◆ loadForUpdate()

template<typename T >
T * RcuPointer< T >::loadForUpdate ( ) const
inline

The caller holds the writer lock that excludes exchange and reclamation.

Definition at line 39 of file Rcu.h.

Member Data Documentation

◆ m_Pointer

template<typename T >
T* RcuPointer< T >::m_Pointer = nullptr
private

Definition at line 49 of file Rcu.h.


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