ucommon

mutex::gaurd Class Reference

Gaurd class to apply scope based mutex locking to objects. More...

#include <thread.h>

Public Member Functions

 gaurd ()
 Create an unitialized instance of gaurd.
 gaurd (void *object)
 Construct a gaurd for a specific object.
void operator= (void *pointer)
 Set gaurd to mutex lock a new object.
void release (void)
 Prematurely release a gaurd.
void set (void *object)
 Set gaurd to mutex lock a new object.
 ~gaurd ()
 Release mutex when gaurd falls out of scope.

Detailed Description

Gaurd class to apply scope based mutex locking to objects.

The mutex is located from the mutex pool rather than contained in the target object, and the lock is released when the gaurd object falls out of scope. This is essentially an automation mechanism for mutex::protect.

Author:
David Sugar <dyfet@gnutelephony.org>

Definition at line 1124 of file thread.h.


Constructor & Destructor Documentation

mutex::gaurd::gaurd ( )

Create an unitialized instance of gaurd.

Usually used with a gaurd = operator.

mutex::gaurd::gaurd ( void *  object)

Construct a gaurd for a specific object.

Parameters:
objectto gaurd.

Member Function Documentation

void mutex::gaurd::operator= ( void *  pointer) [inline]

Set gaurd to mutex lock a new object.

If a lock is currently held, it is released.

Parameters:
pointerto object to gaurd.

Definition at line 1164 of file thread.h.

void mutex::gaurd::set ( void *  object)

Set gaurd to mutex lock a new object.

If a lock is currently held, it is released.

Parameters:
objectto gaurd.

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