#include <ncbimtx.hpp>
Inheritance diagram for CMutex:


Mutex that allows nesting with runtime checks.
Allows for recursive locks by the same thread. Checks the mutex owner before unlocking. This mutex should be used when performance is less important than data protection. For faster performance see CFastMutex.
Definition at line 715 of file ncbimtx.hpp.
Public Types | |
| typedef CMutexGuard | TReadLockGuard |
| Define Read Lock Guard. | |
| typedef CMutexGuard | TWriteLockGuard |
| Define Write Lock Guard. | |
Public Member Functions | |
| CMutex (void) | |
| Constructor. | |
| ~CMutex (void) | |
| Destructor. | |
| operator SSystemMutex & (void) | |
| Get SSystemMutex. | |
| void | Lock (void) |
| Lock mutex. | |
| bool | TryLock (void) |
| Try locking mutex. | |
| void | Unlock (void) |
| Unlock mutex. | |
Private Member Functions | |
| CMutex (const CMutex &) | |
| Private copy constructor to disallow initialization. | |
| CMutex & | operator= (const CMutex &) |
| Private assignment operator to disallow assignment. | |
Private Attributes | |
| SSystemMutex | m_Mutex |
| System mutex. | |
Friends | |
| class | CRWLock |
| Allow use of m_Mtx and m_Owner members directly. | |
|
|
Define Read Lock Guard.
Definition at line 727 of file ncbimtx.hpp. |
|
|
Define Write Lock Guard.
Definition at line 730 of file ncbimtx.hpp. |
|
|
Constructor.
|
|
|
Destructor. Report error if the mutex is locked. |
|
|
Private copy constructor to disallow initialization.
|
|
|
Lock mutex. Operation:
Referenced by CAppJobDispatcher::Lock(), CRegistryFile::Lock(), CGBProject::Lock(), CObservable::Lock(), CSeqDBAtlas::ShowLayout(), CTimer::Start(), and CTimer::Time(). |
|
|
Get SSystemMutex.
|
|
|
Private assignment operator to disallow assignment.
|
|
|
Try locking mutex. Try to acquire the mutex.
Referenced by CAppJobDispatcher::OnEngineJobStateChanged(), and CRegistryFile::TryLock(). |
|
|
Unlock mutex. Operation:
Referenced by CSeqDBAtlas::ShowLayout(), CTimer::Stop(), CTimer::Time(), CAppJobDispatcher::Unlock(), CRegistryFile::Unlock(), CGBProject::Unlock(), and CObservable::Unlock(). |
|
|
Allow use of m_Mtx and m_Owner members directly.
Definition at line 773 of file ncbimtx.hpp. |
|
|
System mutex.
Definition at line 765 of file ncbimtx.hpp. |
1.4.6
Modified on Wed Dec 09 08:19:30 2009 by modify_doxy.py rev. 173732