OFReadWriteLocker Class Reference

This class aims to provide an easy way for making sure OFReadWriteLocks are unlocked in an exception safe way. More...

List of all members.

Public Member Functions

 OFReadWriteLocker (OFReadWriteLock &lock)
 constructor
 ~OFReadWriteLocker ()
 destructor, unlocks the mutex if necessary
int rdlock ()
 lock the lock for reading
int wrlock ()
 lock the lock for writing
int tryrdlock ()
 try to lock the lock for reading
int trywrlock ()
 try to lock the lock for writing
int unlock ()
 unlock the lock

Private Member Functions

 OFReadWriteLocker (const OFReadWriteLocker &arg)
 unimplemented private copy constructor
OFReadWriteLockeroperator= (const OFReadWriteLocker &arg)
 unimplemented private assignment operator

Private Attributes

OFReadWriteLocktheLock
 the lock on which we are operating
OFBool locked
 did we sucessfully lock the lock?


Detailed Description

This class aims to provide an easy way for making sure OFReadWriteLocks are unlocked in an exception safe way.

You can just create a local instance of this class and lock the OFReadWriteLock through it. When it is destructed it will make sure that the lock is unlocked if necessary.

Definition at line 514 of file ofthread.h.


Constructor & Destructor Documentation

OFReadWriteLocker::OFReadWriteLocker ( OFReadWriteLock lock  ) 

constructor

Parameters:
lock the lock to associate this instance with


Member Function Documentation

int OFReadWriteLocker::rdlock (  ) 

lock the lock for reading

Returns:
0 upon success, an error code otherwise
See also:
OFReadWriteLock::rdlock

int OFReadWriteLocker::wrlock (  ) 

lock the lock for writing

Returns:
0 upon success, an error code otherwise
See also:
OFReadWriteLock::wrlock

int OFReadWriteLocker::tryrdlock (  ) 

try to lock the lock for reading

Returns:
0 upon success, OFReadWriteLock::busy if the read/write lock is already locked, an error code otherwise
See also:
OFReadWriteLock::tryrdlock

int OFReadWriteLocker::trywrlock (  ) 

try to lock the lock for writing

Returns:
0 upon success, OFReadWriteLock::busy if the read/write lock is already locked, an error code otherwise
See also:
OFReadWriteLock::trywrlock

int OFReadWriteLocker::unlock (  ) 

unlock the lock

Returns:
0 upon success, an error code otherwise
See also:
OFReadWriteLock::unlock


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


Generated on 6 Jan 2011 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.5.1