![]() |
|
|
Bdb packages | Design docs | Source docs | Guidelines | Recent releases |
|
Main Page Modules Namespace List Class Hierarchy Alphabetical List Compound List File List Compound Members File Members BdbCondReadWriteLock Class Reference
[BdbCondRemote]#include <BdbCondReadWriteLock.hh>
Public Methods
BdbCondReadWriteLock () virtual ~BdbCondReadWriteLock () bool beginRead () bool endRead () bool downgrade () bool beginWrite () bool endWrite () Protected Methods
BdbCondReadWriteLock (const BdbCondReadWriteLock &theLock) BdbCondReadWriteLock & operator= (const BdbCondReadWriteLock &theLock) Private Attributes
pthread_mutex_t _myMutex pthread_cond_t _myCondVar int _numReaders int _numWriters int _numPendings Constructor & Destructor Documentation
BdbCondReadWriteLock::BdbCondReadWriteLock ( )
Definition at line 62 of file BdbCondReadWriteLock.cc.
References _myCondVar, and _myMutex.
BdbCondReadWriteLock::~BdbCondReadWriteLock ( ) [virtual]
Definition at line 80 of file BdbCondReadWriteLock.cc.
References _myCondVar, and _myMutex.
BdbCondReadWriteLock::BdbCondReadWriteLock ( const BdbCondReadWriteLock & theLock ) [protected]
Definition at line 71 of file BdbCondReadWriteLock.cc.
Member Function Documentation
bool BdbCondReadWriteLock::beginRead ( )
The following operations may block the calling thread if the corresponding lock is not available:
The following operations do not block the calling thread but may unblock other threads waiting for the resource.
endRead() downgrade() endWrite()
The "false" return status of these operations means that something has failed during their execution. This means that the results of operation are unreliable.
Definition at line 105 of file BdbCondReadWriteLock.cc.
References _myCondVar, _myMutex, _numPendings, _numReaders, and _numWriters.
Referenced by BdbCondROIDServerCache::beginReadLock(), BdbCondRInfoLoader::cacheLockBeginRead(), BdbCondRInfoImpl::cacheLockBeginRead(), BdbCondRInfoImpl::containerLockBeginRead(), and BdbCondROIDServerImpl::statsLockBeginRead().
bool BdbCondReadWriteLock::beginWrite ( )
Definition at line 168 of file BdbCondReadWriteLock.cc.
References _myCondVar, _myMutex, _numPendings, _numReaders, and _numWriters.
Referenced by BdbCondROIDServerCache::beginWriteLock(), BdbCondRInfoImpl::cacheLockUpgrade(), BdbCondRInfoLoader::containerLockBeginWrite(), BdbCondRInfoImpl::containerLockBeginWrite(), and BdbCondROIDServerImpl::statsLockBeginWrite().
bool BdbCondReadWriteLock::downgrade ( )
Definition at line 146 of file BdbCondReadWriteLock.cc.
References _myCondVar, _myMutex, _numPendings, _numReaders, and _numWriters.
Referenced by BdbCondRInfoImpl::cacheLockDowngrade().
bool BdbCondReadWriteLock::endRead ( )
Definition at line 125 of file BdbCondReadWriteLock.cc.
References _myCondVar, _myMutex, _numPendings, and _numReaders.
Referenced by BdbCondRInfoLoader::cacheLockEndRead(), BdbCondRInfoImpl::cacheLockEndRead(), BdbCondRInfoImpl::cacheLockUpgrade(), BdbCondRInfoImpl::containerLockEndRead(), BdbCondROIDServerCache::endReadLock(), and BdbCondROIDServerImpl::statsLockEndRead().
bool BdbCondReadWriteLock::endWrite ( )
Definition at line 188 of file BdbCondReadWriteLock.cc.
References _myCondVar, _myMutex, _numPendings, and _numWriters.
Referenced by BdbCondRInfoLoader::containerLockEndWrite(), BdbCondRInfoImpl::containerLockEndWrite(), BdbCondROIDServerCache::endWriteLock(), and BdbCondROIDServerImpl::statsLockEndWrite().
BdbCondReadWriteLock & BdbCondReadWriteLock::operator= ( const BdbCondReadWriteLock & theLock ) [protected]
Definition at line 91 of file BdbCondReadWriteLock.cc.
Member Data Documentation
pthread_cond_t BdbCondReadWriteLock::_myCondVar [private]
Definition at line 104 of file BdbCondReadWriteLock.hh.
Referenced by BdbCondReadWriteLock(), beginRead(), beginWrite(), downgrade(), endRead(), endWrite(), and ~BdbCondReadWriteLock().
pthread_mutex_t BdbCondReadWriteLock::_myMutex [private]
Definition at line 103 of file BdbCondReadWriteLock.hh.
Referenced by BdbCondReadWriteLock(), beginRead(), beginWrite(), downgrade(), endRead(), endWrite(), and ~BdbCondReadWriteLock().
int BdbCondReadWriteLock::_numPendings [private]
Definition at line 110 of file BdbCondReadWriteLock.hh.
Referenced by beginRead(), beginWrite(), downgrade(), endRead(), and endWrite().
int BdbCondReadWriteLock::_numReaders [private]
Definition at line 108 of file BdbCondReadWriteLock.hh.
Referenced by beginRead(), beginWrite(), downgrade(), and endRead().
int BdbCondReadWriteLock::_numWriters [private]
Definition at line 109 of file BdbCondReadWriteLock.hh.
Referenced by beginRead(), beginWrite(), downgrade(), and endWrite().
The documentation for this class was generated from the following files:
- /BdbCondRemote/BdbCondReadWriteLock.hh
- /BdbCondRemote/BdbCondReadWriteLock.cc
BaBar Public Site | SLAC | News | Links | Who's Who | Contact Us
Page Owner: Jacek Becla
Last Update: October 04, 2002