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

LOW_objectSynchronizer::__synchronizeStaticWriteWeak Class Reference

Weak write locking class to ensure exclusive access. More...

#include <LOW_objectSynchronizer.h>

Collaboration diagram for LOW_objectSynchronizer::__synchronizeStaticWriteWeak:

Collaboration graph
[legend]
List of all members.

Public Methods

 __synchronizeStaticWriteWeak (LOW_thread_rwlock **inRwlockSingleton, LOW_platformMiscFactory::threadIdent_t &inWriteLockHolder, std::string inFile, int inLine)
 Obtain the weak write lock. More...

 ~__synchronizeStaticWriteWeak ()
 Release the weak write lock. More...


Private Attributes

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

bool wasObtainedWeakly
 Indicate if lock was really obtained. More...

LOW_platformMiscFactory::threadIdent_t & writeLockHolder

Detailed Description

Weak write locking class to ensure exclusive access.

Works similar to __synchronizeMethodRead with one difference in the following situation: If the calling thread already has a write lock then no blocking will occur and no lock will be obtained.

Definition at line 261 of file LOW_objectSynchronizer.h.


Constructor & Destructor Documentation

LOW_objectSynchronizer::__synchronizeStaticWriteWeak::__synchronizeStaticWriteWeak LOW_thread_rwlock **    inRwlockSingleton,
LOW_platformMiscFactory::threadIdent_t &    inWriteLockHolder,
std::string    inFile,
int    inLine
[inline]
 

Obtain the weak write lock.

Inlined for performance reasons.

Parameters:
inObjectSynchronizer  Reference to the object to synchronize on.

Definition at line 269 of file LOW_objectSynchronizer.h.

References __synchronizeStaticWriteWeak(), LOW_platformMisc::getThreadID(), LOW_thread_Factory::new_rwlock(), LOW_helper_msglog::objSync_getLock_dl, LOW_helper_msglog::objSync_lockFailed_dl, LOW_helper_msglog::printDebug(), staticRwLock, wasObtainedWeakly, and writeLockHolder.

Referenced by __synchronizeStaticWriteWeak().

LOW_objectSynchronizer::__synchronizeStaticWriteWeak::~__synchronizeStaticWriteWeak   [inline]
 

Release the weak write lock.

Inlined for performance reasons.

Definition at line 304 of file LOW_objectSynchronizer.h.

References wasObtainedWeakly, and writeLockHolder.


Member Data Documentation

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

Pointer to pointer to the static lock.

Definition at line 316 of file LOW_objectSynchronizer.h.

Referenced by __synchronizeStaticWriteWeak().

bool LOW_objectSynchronizer::__synchronizeStaticWriteWeak::wasObtainedWeakly [private]
 

Indicate if lock was really obtained.

Definition at line 317 of file LOW_objectSynchronizer.h.

Referenced by __synchronizeStaticWriteWeak(), and ~__synchronizeStaticWriteWeak().

LOW_platformMiscFactory::threadIdent_t& LOW_objectSynchronizer::__synchronizeStaticWriteWeak::writeLockHolder [private]
 

Definition at line 318 of file LOW_objectSynchronizer.h.

Referenced by __synchronizeStaticWriteWeak(), and ~__synchronizeStaticWriteWeak().


The documentation for this class was generated from the following file:
Generated on Mon Nov 10 10:32:50 2003 by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001