21 INLINE ReMutexDirect::
23 #ifndef HAVE_REMUTEXTRUEIMPL
24 : _cvar_impl(_lock_impl)
27 #ifndef HAVE_REMUTEXTRUEIMPL
28 _locking_thread = NULL;
38 INLINE ReMutexDirect::
47 INLINE ReMutexDirect::
49 #ifndef HAVE_REMUTEXTRUEIMPL
50 : _cvar_impl(_lock_impl)
61 INLINE
void ReMutexDirect::
83 TAU_PROFILE(
"void ReMutexDirect::acquire()",
" ", TAU_USER);
84 #ifdef HAVE_REMUTEXTRUEIMPL
88 #endif // HAVE_REMUTEXTRUEIMPL
100 TAU_PROFILE(
"void ReMutexDirect::acquire(Thread *)",
" ", TAU_USER);
101 #ifdef HAVE_REMUTEXTRUEIMPL
105 #endif // HAVE_REMUTEXTRUEIMPL
117 TAU_PROFILE(
"void ReMutexDirect::acquire(bool)",
" ", TAU_USER);
118 #ifdef HAVE_REMUTEXTRUEIMPL
122 #endif // HAVE_REMUTEXTRUEIMPL
134 TAU_PROFILE(
"void ReMutexDirect::acquire(bool)",
" ", TAU_USER);
135 #ifdef HAVE_REMUTEXTRUEIMPL
138 return ((
ReMutexDirect *)
this)->do_try_acquire(current_thread);
139 #endif // HAVE_REMUTEXTRUEIMPL
159 TAU_PROFILE(
"void ReMutexDirect::elevate_lock()",
" ", TAU_USER);
160 #ifdef HAVE_REMUTEXTRUEIMPL
164 #endif // HAVE_REMUTEXTRUEIMPL
179 TAU_PROFILE(
"void ReMutexDirect::release()",
" ", TAU_USER);
180 #ifdef HAVE_REMUTEXTRUEIMPL
184 #endif // HAVE_REMUTEXTRUEIMPL
244 #ifndef HAVE_REMUTEXTRUEIMPL
254 INLINE
void ReMutexDirect::
260 #ifndef HAVE_REMUTEXTRUEIMPL
270 INLINE
bool ReMutexDirect::
bool try_acquire() const
Returns immediately, with a true value indicating the mutex has been acquired, and false indicating i...
void set_name(const string &name)
The mutex name is only defined when compiling in DEBUG_THREADS mode.
string get_name() const
The mutex name is only defined when compiling in DEBUG_THREADS mode.
void release() const
Releases the reMutex.
static Thread * get_current_thread()
Returns a pointer to the currently-executing Thread object.
void clear_name()
The mutex name is only defined when compiling in DEBUG_THREADS mode.
void acquire() const
Grabs the reMutex if it is available.
This class implements a standard reMutex by making direct calls to the underlying implementation laye...
A thread; that is, a lightweight process.
bool has_name() const
The mutex name is only defined when compiling in DEBUG_THREADS mode.
void elevate_lock() const
This method increments the lock count, assuming the calling thread already holds the lock...
bool debug_is_locked() const
Returns true if the current thread has locked the ReMutex, false otherwise.