Cpp Utilities 1.2.3
Public Member Functions | Friends | List of all members
Memory::RWSpinLock::WriteHolder Class Reference

RAII guard for write lock with RWSpinLock::lock() on construction and RWSpinLock::unlock() on destruction. More...

#include <RWSpinLock.hpp>

Public Member Functions

 WriteHolder (RWSpinLock *lock)
 
 WriteHolder (RWSpinLock &lock)
 
 WriteHolder (UpgradedHolder &&upgraded)
 promoted from an upgrade lock holder More...
 
 WriteHolder (WriteHolder &&other) noexcept
 
WriteHolderoperator= (WriteHolder &&other)
 
 WriteHolder (const WriteHolder &other)=delete
 
WriteHolderoperator= (const WriteHolder &other)=delete
 
 ~WriteHolder ()
 
void reset (RWSpinLock *lock=nullptr)
 
void swap (WriteHolder *other)
 

Friends

class ReadHolder
 
class UpgradedHolder
 

Detailed Description

RAII guard for write lock with RWSpinLock::lock() on construction and RWSpinLock::unlock() on destruction.

Constructor & Destructor Documentation

◆ WriteHolder() [1/5]

Memory::RWSpinLock::WriteHolder::WriteHolder ( RWSpinLock lock)
inlineexplicit

◆ WriteHolder() [2/5]

Memory::RWSpinLock::WriteHolder::WriteHolder ( RWSpinLock lock)
inlineexplicit

◆ WriteHolder() [3/5]

Memory::RWSpinLock::WriteHolder::WriteHolder ( UpgradedHolder &&  upgraded)
inlineexplicit

promoted from an upgrade lock holder

◆ WriteHolder() [4/5]

Memory::RWSpinLock::WriteHolder::WriteHolder ( WriteHolder &&  other)
inlinenoexcept

◆ WriteHolder() [5/5]

Memory::RWSpinLock::WriteHolder::WriteHolder ( const WriteHolder other)
delete

◆ ~WriteHolder()

Memory::RWSpinLock::WriteHolder::~WriteHolder ( )
inline

Member Function Documentation

◆ operator=() [1/2]

WriteHolder & Memory::RWSpinLock::WriteHolder::operator= ( WriteHolder &&  other)
inline

◆ operator=() [2/2]

WriteHolder & Memory::RWSpinLock::WriteHolder::operator= ( const WriteHolder other)
delete

◆ reset()

void Memory::RWSpinLock::WriteHolder::reset ( RWSpinLock lock = nullptr)
inline

◆ swap()

void Memory::RWSpinLock::WriteHolder::swap ( WriteHolder other)
inline

Friends And Related Function Documentation

◆ ReadHolder

friend class ReadHolder
friend

◆ UpgradedHolder

friend class UpgradedHolder
friend

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