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

# XFcMutex Class Reference

Mutual exclusion (mutex) class. More...

List of all members.

## Public Member Functions
XFCIMPORT void | lock ()
| Locks the mutex.
XFCIMPORT void | unlock ()
| Unlocks the mutex.
virtual XFCIMPORT | ~XFcMutex ()
| Virtual destructor.
## Static Public Member Functions
XFCIMPORT XFcMutex * | create ()
| Creates a mutex object.
## Protected Member Functions
| XFcMutex ()
| Constructor.
INT | init ()
| Initializes mutex.
void | doLock ()
| Does the real lock operation.
void | doUnlock ()
| Does the real unlock operation.
## Protected Attributes
UINT32 | mLockingThreadId
| The id of the thread that has locked the mutex.
INT32 | mLockCount
| The number of times the locking thread has called lock().
## Private Attributes
void * | mMutex
| Mutex handle.

## Detailed Description

Mutual exclusion (mutex) class.

In order to synchronize code running in several threads, you may want to use a mutex. All threads will pause on mutex lock if some thread has already locked it, and will resume once the locking thread calls unlock.

## Constructor & Destructor Documentation

virtual XFCIMPORT XFcMutex::~XFcMutex | ( |  | ) | `[virtual]`

| Virtual destructor.

XFcMutex::XFcMutex | ( |  | ) | `[protected]`

| Constructor.

## Member Function Documentation

XFCIMPORT XFcMutex* XFcMutex::create | ( |  | ) | `[static]`

| Creates a mutex object. Returns: pointer to a new mutex object or NULL if unsuccessful

void XFcMutex::doLock | ( |  | ) | `[protected]`

| Does the real lock operation.

void XFcMutex::doUnlock | ( |  | ) | `[protected]`

| Does the real unlock operation.

INT XFcMutex::init | ( |  | ) | `[protected]`

| Initializes mutex. Returns: 1 if successful, 0 if unsuccessful.

XFCIMPORT void XFcMutex::lock | ( |  | ) |

| Locks the mutex. Note: Blocks until the mutex is available for locking. Returns immediately if the caller thread already has the lock.

XFCIMPORT void XFcMutex::unlock | ( |  | ) |

| Unlocks the mutex.

## Member Data Documentation

INT32 XFcMutex::mLockCount`[protected]`

| The number of times the locking thread has called lock().

UINT32 XFcMutex::mLockingThreadId`[protected]`

| The id of the thread that has locked the mutex.

void* XFcMutex::mMutex`[private]`

| Mutex handle.

|  | X-Forge Documentation Confidential Copyright © 2002-2003 Fathammer |  | Documentation generated with doxygen by Dimitri van Heesch