AutoVLock Class Reference

AutoVLock is a container for safely managing global variable and object lock handovers, required for functions accessing global variables and object data where locking is necessary. More...

#include <AutoVLock.h>

List of all members.

Public Member Functions

DLLEXPORT AutoVLock (ExceptionSink *n_xsink)
 creates an empty lock container
DLLEXPORT ~AutoVLock ()
 releases all locks held and destroys the container
DLLEXPORT void del ()
 manually releases the lock currently held
DLLLOCAL void set (QoreThreadLock *n_m)
 sets the current lock
DLLLOCAL void set (QoreObject *n_o, QoreThreadLock *n_m)
 sets the current object (for dereference) and lock
DLLLOCAL QoreThreadLockget ()
 gets the current lock
DLLLOCAL void addMemberNotification (QoreObject *o, const char *member)
 adds an object member notification entry, internal-only

Detailed Description

AutoVLock is a container for safely managing global variable and object lock handovers, required for functions accessing global variables and object data where locking is necessary.

This object is used for lock handover management and automatically releasing the last lock.


Constructor & Destructor Documentation

DLLEXPORT AutoVLock::AutoVLock ( ExceptionSink n_xsink  ) 

creates an empty lock container

Parameters:
n_xsink pointer to ExceptionSink object for use with object notifications

Member Function Documentation

DLLLOCAL void AutoVLock::addMemberNotification ( QoreObject o,
const char *  member 
)

adds an object member notification entry, internal-only

Parameters:
o the object to add
member the member that was changed (must be in QCS_DEFAULT encoding)

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

Generated on 14 Jun 2010 for Qore Programming Language by  doxygen 1.6.1