32 #ifndef _QORE_AUTOVLOCK_H 
   34 #define _QORE_AUTOVLOCK_H 
   36 class AbstractSmartLock;
 
   40     DLLLOCAL QLckPtr() : rwl(0) {
 
   43     DLLLOCAL 
void set(QoreVarRWLock* n_rwl) {
 
   47     DLLLOCAL QoreVarRWLock* getRWL()
 const {
 
   51     DLLLOCAL 
bool isSet()
 const {
 
   55     DLLLOCAL 
void unlockAndClear() {
 
   62     DLLLOCAL 
void clear() {
 
   68     DLLLOCAL 
void unlockIntern() {
 
   94     hashdecl qore_avl_private* priv;
 
  101     DLLLOCAL 
void* 
operator new(size_t) = 
delete;
 
  116     DLLEXPORT 
operator bool() 
const;
 
  122     DLLLOCAL 
void set(QoreVarRWLock* n_rwl);
 
AutoVLock is a container for safely managing global variable and object lock handovers,...
Definition: AutoVLock.h:80
 
DLLEXPORT void del()
manually releases the lock currently held
 
DLLLOCAL void clear()
leaves the lock locked and the object referenced and clears the object and lock pointers
 
DLLEXPORT ~AutoVLock()
releases all locks held and destroys the container
 
DLLLOCAL QoreVarRWLock * getRWL() const
gets the current read-write lock
 
DLLLOCAL QoreObject * getObject() const
gets the current object
 
DLLLOCAL void set(QoreVarRWLock *n_rwl)
sets the current lock
 
DLLLOCAL void addMemberNotification(QoreObject *o, const char *member)
adds an object member notification entry, internal-only
 
container for holding Qore-language exception information and also for registering a "thread_exit" ca...
Definition: ExceptionSink.h:48
 
the implementation of Qore's object data type, reference counted, dynamically-allocated only
Definition: QoreObject.h:60