Main Page | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members | Related Pages

LOW_objectSynchronizer::__synchronizeStaticRead Class Reference

Read locking class to ensure exclusive access. More...

#include <LOW_objectSynchronizer.h>

Collaboration diagram for LOW_objectSynchronizer::__synchronizeStaticRead:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 __synchronizeStaticRead (LOW_thread_rwlock **inRwlockSingleton, std::string inFile, int inLine)
 Obtain the read lock.

 ~__synchronizeStaticRead ()
 Release the lock.


Private Attributes

LOW_thread_rwlock ** staticRwLock
 Pointer to pointer to the static lock.


Detailed Description

Read locking class to ensure exclusive access.

The class is intended to be used in a "locking is creation" design pattern. On creation a read lock on a rwlock is optained, and on destruction the rwlock is released.

Definition at line 93 of file LOW_objectSynchronizer.h.


Constructor & Destructor Documentation

LOW_objectSynchronizer::__synchronizeStaticRead::__synchronizeStaticRead LOW_thread_rwlock **  inRwlockSingleton,
std::string  inFile,
int  inLine
[inline]
 

Obtain the read lock.

Inlined for performance reasons.

Parameters:
inObjectSynchronizer Reference to the object to synchronize on.

Definition at line 101 of file LOW_objectSynchronizer.h.

References LOW_thread_Factory::new_rwlock(), LOW_helper_msglog::objSync_getLock_dl, LOW_helper_msglog::objSync_lockFailed_dl, LOW_helper_msglog::printDebug(), and staticRwLock.

LOW_objectSynchronizer::__synchronizeStaticRead::~__synchronizeStaticRead  )  [inline]
 

Release the lock.

Inlined for performance reasons.

Definition at line 128 of file LOW_objectSynchronizer.h.


Member Data Documentation

LOW_thread_rwlock** LOW_objectSynchronizer::__synchronizeStaticRead::staticRwLock [private]
 

Pointer to pointer to the static lock.

Definition at line 134 of file LOW_objectSynchronizer.h.

Referenced by __synchronizeStaticRead().


The documentation for this class was generated from the following file:
Generated on Tue Feb 3 11:31:04 2004 for OneWireLibrary++ by doxygen 1.3.2