Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
Gray::cLockableBase Class Reference

#include <cLocker.h>

Inheritance diagram for Gray::cLockableBase:
Gray::cThreadLockBase Gray::cThreadLockStub Gray::cThreadLockFast Gray::cThreadLockMutex Gray::cThreadLockableRef GrayLib::cUIDManagerArray Gray::cThreadLockRW GrayLib::cNetAddrTracker GrayLib::cXObject Gray::cThreadLockableRW GrayLib::cClientAddrObj GrayGUI::cXWindow GrayLib::cHttpScriptedProtocolStream GrayLib::cScriptContextObj GrayLib::cXObjDef GrayLib::cXObject2 GrayGUI::cXColorGrid GrayGUI::cXComboBox GrayGUI::cXImage GrayGUI::cXProgressBar GrayGUI::cXScrollBar GrayGUI::cXSpinCounter GrayGUI::cXStaticMultiScroll GrayGUI::cXWindowText GrayLib::cXObjPack GrayLib::cXObjPackChild GrayMapData::cMapPatch GrayX::GrayXRoot

Protected Member Functions

 cLockableBase () noexcept
 
 ~cLockableBase ()
 
LONG get_LockCount () const
 
bool isLocked () const
 
void IncLockCount ()
 
LONG DecLockCount ()
 
void Lock ()
 
LONG Unlock ()
 

Detailed Description

Common base for cThreadLockBase and all lock / thread lock / mutex implementations. derived class can override Lock,Unlock NOT thread safe. Assume caller handles thread safety. Use cInterlockedVal if we want/need thread safety here. Similar to cRefBase and cInterlockedVal.

Constructor & Destructor Documentation

◆ cLockableBase()

Gray::cLockableBase::cLockableBase ( )
inlineprotectednoexcept

◆ ~cLockableBase()

Gray::cLockableBase::~cLockableBase ( )
inlineprotected

Member Function Documentation

◆ DecLockCount()

LONG Gray::cLockableBase::DecLockCount ( )
inlineprotected

◆ get_LockCount()

LONG Gray::cLockableBase::get_LockCount ( ) const
inlineprotected

◆ IncLockCount()

void Gray::cLockableBase::IncLockCount ( )
inlineprotected

◆ isLocked()

bool Gray::cLockableBase::isLocked ( ) const
inlineprotected

◆ Lock()

void Gray::cLockableBase::Lock ( )
inlineprotected

◆ Unlock()

LONG Gray::cLockableBase::Unlock ( )
inlineprotected

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