# PTimedMutex Class Reference

This class defines a thread mutual exclusion object. More...

`#include <mutex.h>`

Inheritance diagram for PTimedMutex:

List of all members.

## Public Member Functions

| PTimedMutex ()
| PTimedMutex (const PTimedMutex &mutex)
PINLINE bool | Try ()
| Try to enter the critical section for exlusive access.

## Protected Attributes

PAtomicInteger | m_lockCount
pthread_t | m_lockerId

## Detailed Description

This class defines a thread mutual exclusion object.

A mutex is where a piece of code or data cannot be accessed by more than one thread at a time. To prevent this the PMutex is used in the following manner:

          PMutex mutex;

          ...

          mutex.Wait();

          ... critical section - only one thread at a time here.

          mutex.Signal();

          ...

The first thread will pass through the `Wait()` function, a second thread will block on that function until the first calls the `Signal()` function, releasing the second thread.

## Constructor & Destructor Documentation

PTimedMutex::PTimedMutex | ( |  | ) |

PTimedMutex::PTimedMutex | ( | const PTimedMutex & | mutex | ) |

## Member Function Documentation

PINLINE bool PTimedMutex::Try | ( |  | ) | `[inline]`

Try to enter the critical section for exlusive access.

Does not wait.

Returns:
  true if cirical section entered, leave/Signal must be called.

## Member Data Documentation

PAtomicInteger PTimedMutex::m_lockCount `[mutable, protected]`

pthread_t PTimedMutex::m_lockerId `[mutable, protected]`

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

- mutex.h