NAME
ACE_recursive_thread_mutex_t -
Implement a thin C++ wrapper that allows nested acquisition
and release of a mutex that occurs in the same thread.
SYNOPSIS
#include <ace/OS.h>
class ACE_recursive_thread_mutex_t
{
public:
ACE_thread_mutex_t nesting_mutex_;
ACE_cond_t lock_available_;
int nesting_level_;
ACE_thread_t owner_id_;
};
DESCRIPTION
This implementation is based on an algorithm sketched by Dave
Butenhof butenhof@zko.dec.com
. Naturally, I take the
credit for any mistakes ;-)
PUBLIC MEMBERS
ACE_thread_mutex_t nesting_mutex_;
Guards the state of the nesting level and thread id.
ACE_cond_t lock_available_;
This condition variable suspends other waiting threads until the
mutex is available.
int nesting_level_;
Current nesting level of the recursion.
ACE_thread_t owner_id_;
Current owner of the lock.
AUTHOR
Doug Schmidt schmidt@cs.wustl.edu
, Jesper S. M|ller
stophph@diku.dk
, and a cast of thousands...
The ACE_Sched_Priority type should be used for platform-
independent thread and process priorities, by convention.
int should be used for OS-specific priorities.
typedef for the _stat data structure
Giving unique ACE scoped names for some important
RTSignal-Related constants. Becuase sometimes, different
platforms use different names for these constants.
LIBRARY
ace