Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

MutexLockBase Class Reference

The main purpose of this base class is actually to allow setting of usleep_granularity across all locks. More...

#include <MutexLock.h>

Inheritance diagram for MutexLockBase:

Detailed Description

The main purpose of this base class is actually to allow setting of usleep_granularity across all locks.

It would be nice if we just put functions in here so we could reference locks without regard to the number of doors, but then all processes which use the lock would have to have been created via fork to handle virtual calls properly, and I don't want to put that overhead on the otherwise lightweight SoundPlay process under Aperios.

Definition at line 29 of file MutexLock.h.

List of all members.

Public Member Functions

virtual ~MutexLockBase ()
 basic destructor

Static Public Member Functions

static void aboutToFork ()

Static Public Attributes

static const unsigned int NO_OWNER = -1U
 marks as unlocked
static unsigned int usleep_granularity = 5000
 the estimated cost in microseconds of usleep call itself -- value passed to usleep will be 10 times this (only used by software lock implementation on non-Aperios)

Constructor & Destructor Documentation

virtual MutexLockBase::~MutexLockBase (  )  [virtual]

basic destructor

Definition at line 31 of file MutexLock.h.


Member Function Documentation

static void MutexLockBase::aboutToFork (  )  [static]

Definition at line 39 of file MutexLock.h.


Member Data Documentation

const unsigned int MutexLockBase::NO_OWNER = -1U [static]
unsigned int MutexLockBase::usleep_granularity = 5000 [static]

the estimated cost in microseconds of usleep call itself -- value passed to usleep will be 10 times this (only used by software lock implementation on non-Aperios)

Definition at line 34 of file MutexLock.h.

Referenced by MessageQueue< MAX_UNREAD, MAX_RECEIVERS, MAX_SENDERS >::sendMessage().


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

Tekkotsu v5.1CVS
Generated Mon May 9 04:59:13 2016 by Doxygen 1.6.3