UCommon
ucommon::RecursiveMutex Class Reference

Portable recursive exclusive lock. More...

#include <thread.h>

Inheritance diagram for ucommon::RecursiveMutex:
Collaboration diagram for ucommon::RecursiveMutex:

Public Types

typedef autoexclusive< RecursiveMutexautolock
 

Public Member Functions

bool lock (timeout_t timeout)
 Timed lock request.
 
void lock (void)
 Acquire or increase locking.
 
 RecursiveMutex ()
 Create rexlock.
 
void release (void)
 Release or decrease locking.
 

Protected Member Functions

virtual void _lock (void)
 
virtual void _unlock (void)
 

Protected Attributes

pthread_t locker
 
unsigned lockers
 
unsigned waiting
 

Detailed Description

Portable recursive exclusive lock.

This class is built from the conditional and hence does not require support for non-standard and platform specific extensions to pthread mutex to support recrusive style mutex locking. The exclusive protocol is implimented to support exclusive_lock referencing.

Definition at line 369 of file thread.h.

Member Typedef Documentation

◆ autolock

typedef autoexclusive<RecursiveMutex> ucommon::RecursiveMutex::autolock

Definition at line 383 of file thread.h.

Member Function Documentation

◆ _lock()

virtual void ucommon::RecursiveMutex::_lock ( void )
protectedvirtual

◆ _unlock()

virtual void ucommon::RecursiveMutex::_unlock ( void )
protectedvirtual

Field Documentation

◆ locker

pthread_t ucommon::RecursiveMutex::locker
protected

Definition at line 377 of file thread.h.

◆ lockers

unsigned ucommon::RecursiveMutex::lockers
protected

Definition at line 376 of file thread.h.

◆ waiting

unsigned ucommon::RecursiveMutex::waiting
protected

Definition at line 375 of file thread.h.


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