If you can read this text, it means you are not experiencing this website at its best. This website is designed for used with a standards-compliant browser.
Current version: 2.3.2
ZThreads
A platform-independent, multi-threading and synchronization library for C++
Home Documentation Downloads CVS Contact
PriorityInheritanceMutex Class Reference

#include <PriorityInheritanceMutex.h>

Inheritance diagram for PriorityInheritanceMutex:
Lockable NonCopyable

Public Member Functions

 PriorityInheritanceMutex ()
 
virtual ~PriorityInheritanceMutex ()
 
virtual void acquire ()
 
virtual bool tryAcquire (unsigned long timeout)
 
virtual void release ()
 
- Public Member Functions inherited from Lockable
virtual ~Lockable ()
 Destroy a Lockable object.
 
virtual void acquire ()=0
 
virtual bool tryAcquire (unsigned long timeout)=0
 
virtual void release ()=0
 

Detailed Description

Author
Eric Crahen http://www.code-foo.com
Date
<2003-07-16T19:37:36-0400>
Version
2.2.1

A PriorityInheritanceMutex is similar to a PriorityMutex, it is a non-reentrant, priority sensitive MUTual EXclusion Lockable object. It differs only in its scheduling policy.

See also
PriorityMutex

Scheduling

Threads competing to acquire() a PriorityInheritanceMutex are granted access in order of priority. Threads with a higher priority will be given access first.

When a higher priority thread tries to acquire() a PriorityInheritanceMutex and is about to be blocked by a lower priority thread that has already acquire()d it, the lower priority thread will temporarily have its effective priority raised to that of the higher priority thread until it release()s the mutex; at which point its previous priority will be restored.

Constructor & Destructor Documentation

◆ PriorityInheritanceMutex()

◆ ~PriorityInheritanceMutex()

virtual ~PriorityInheritanceMutex ( )
virtual
See also
Mutex::~Mutex()

Member Function Documentation

◆ acquire()

virtual void acquire ( )
virtual
See also
Mutex::acquire()

Implements Lockable.

◆ release()

virtual void release ( )
virtual
See also
Mutex::release()

Implements Lockable.

◆ tryAcquire()

virtual bool tryAcquire ( unsigned long  timeout)
virtual

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