Qore Programming Language
0.8.11.1
|
the base class for all data to be used as private data of Qore objects More...
#include <AbstractPrivateData.h>
Public Member Functions | |
virtual DLLLOCAL void | deref (class ExceptionSink *xsink) |
decrements the reference count of the object More... | |
virtual DLLLOCAL void | deref () |
decrements the reference count of the object without the possibility of throwing a Qore-language exception | |
DLLLOCAL void | ref () |
increments the reference count of the object | |
Public Member Functions inherited from QoreReferenceCounter | |
DLLEXPORT | QoreReferenceCounter () |
creates the reference counter object | |
DLLEXPORT | ~QoreReferenceCounter () |
destroys the reference counter object | |
DLLLOCAL bool | is_unique () const |
returns true if the reference count is 1 More... | |
DLLLOCAL int | reference_count () const |
gets the reference count More... | |
DLLEXPORT bool | ROdereference () const |
atomically decrements the reference count More... | |
DLLEXPORT void | ROreference () const |
atomically increments the reference count | |
Protected Member Functions | |
virtual DLLLOCAL | ~AbstractPrivateData () |
as these objects are reference counted, the destructor should be called only when the reference count = 0 and not manually | |
Additional Inherited Members | |
Protected Attributes inherited from QoreReferenceCounter | |
QoreThreadLock | mRO |
pthread lock to ensure atomicity of updates for architectures where we don't have an atomic increment and decrement implementation | |
the base class for all data to be used as private data of Qore objects
C++ constructor code for Qore classes must set private data of the class against the class ID using QoreObject::setPrivate()
|
inlinevirtual |
decrements the reference count of the object
xsink | any Qore-language exception information is stored here |
Reimplemented in QoreProgram, and QoreHttpClientObject.
References QoreReferenceCounter::ROdereference().