  | 
  
    Qore Programming Language
    0.9.16
    
   | 
 
 
 
 
   32 #ifndef _QORE_AUTOVLOCK_H 
   34 #define _QORE_AUTOVLOCK_H 
   36 class AbstractSmartLock;
 
   43    DLLLOCAL 
void unlockIntern() {
 
   49    DLLLOCAL QLckPtr() : rwl(0) {
 
   52    DLLLOCAL 
void set(QoreVarRWLock* n_rwl) {
 
   56    DLLLOCAL QoreVarRWLock* getRWL()
 const {
 
   60    DLLLOCAL 
bool isSet()
 const {
 
   64    DLLLOCAL 
void unlockAndClear() {
 
   71    DLLLOCAL 
void clear() {
 
   94    hashdecl qore_avl_private* priv;
 
  101    DLLLOCAL 
void* 
operator new(size_t) = 
delete;
 
  116    DLLEXPORT 
operator bool() 
const;
 
  119    DLLEXPORT 
void del();
 
  122    DLLLOCAL 
void set(QoreVarRWLock* n_rwl);
 
  128    DLLLOCAL QoreVarRWLock* 
getRWL() 
const;
 
  134    DLLLOCAL 
void clear();
 
  
 
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
 
DLLLOCAL void clear()
leaves the lock locked and the object referenced and clears the object and lock pointers
 
DLLEXPORT void del()
manually releases the lock currently held
 
DLLLOCAL QoreVarRWLock * getRWL() const
gets the current read-write lock
 
the implementation of Qore's object data type, reference counted, dynamically-allocated only
Definition: QoreObject.h:61
 
container for holding Qore-language exception information and also for registering a "thread_exit" ca...
Definition: ExceptionSink.h:48
 
DLLLOCAL QoreObject * getObject() const
gets the current object
 
DLLEXPORT ~AutoVLock()
releases all locks held and destroys the container
 
AutoVLock is a container for safely managing global variable and object lock handovers,...
Definition: AutoVLock.h:80