libMesh
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
libMesh::Threads::recursive_mutex::scoped_lock Class Reference

#include <threads_none.h>

Public Member Functions

 scoped_lock ()
 
 scoped_lock (recursive_mutex &)
 
void acquire (recursive_mutex &)
 
void release ()
 
 scoped_lock ()
 
 scoped_lock (recursive_mutex &in_rmutex)
 
 ~scoped_lock ()
 
void acquire (recursive_mutex &in_rmutex)
 
void release ()
 
 scoped_lock ()
 
 scoped_lock (recursive_mutex &rm)
 
 ~scoped_lock ()
 
void acquire (recursive_mutex &rm)
 
void release ()
 

Private Attributes

recursive_mutexrmutex
 
recursive_mutex_rm
 

Detailed Description

Definition at line 171 of file threads_none.h.

Constructor & Destructor Documentation

◆ scoped_lock() [1/6]

libMesh::Threads::recursive_mutex::scoped_lock::scoped_lock ( )
inline

Definition at line 174 of file threads_none.h.

174{}

◆ scoped_lock() [2/6]

libMesh::Threads::recursive_mutex::scoped_lock::scoped_lock ( recursive_mutex )
inlineexplicit

Definition at line 175 of file threads_none.h.

175{}

◆ scoped_lock() [3/6]

libMesh::Threads::recursive_mutex::scoped_lock::scoped_lock ( )
inline

Definition at line 196 of file threads_pthread.h.

196: rmutex(nullptr) {}

References rmutex.

◆ scoped_lock() [4/6]

libMesh::Threads::recursive_mutex::scoped_lock::scoped_lock ( recursive_mutex in_rmutex)
inlineexplicit

Definition at line 197 of file threads_pthread.h.

197: rmutex(&in_rmutex) { rmutex->lock(); }

References libMesh::Threads::recursive_mutex::lock(), and rmutex.

◆ ~scoped_lock() [1/2]

libMesh::Threads::recursive_mutex::scoped_lock::~scoped_lock ( )
inline

Definition at line 199 of file threads_pthread.h.

References release().

◆ scoped_lock() [5/6]

libMesh::Threads::recursive_mutex::scoped_lock::scoped_lock ( )
inline

Definition at line 298 of file threads_tbb.h.

298: _rm(nullptr) {}

References _rm.

◆ scoped_lock() [6/6]

libMesh::Threads::recursive_mutex::scoped_lock::scoped_lock ( recursive_mutex rm)
inlineexplicit

Definition at line 299 of file threads_tbb.h.

299: _rm(nullptr) { acquire(rm); }

References _rm, and acquire().

◆ ~scoped_lock() [2/2]

libMesh::Threads::recursive_mutex::scoped_lock::~scoped_lock ( )
inline

Definition at line 300 of file threads_tbb.h.

300{ release(); }

References release().

Member Function Documentation

◆ acquire() [1/3]

void libMesh::Threads::recursive_mutex::scoped_lock::acquire ( recursive_mutex )
inline

Definition at line 176 of file threads_none.h.

176{}

Referenced by scoped_lock().

◆ acquire() [2/3]

void libMesh::Threads::recursive_mutex::scoped_lock::acquire ( recursive_mutex in_rmutex)
inline

Definition at line 201 of file threads_pthread.h.

201{ rmutex = &in_rmutex; rmutex->lock(); }

References libMesh::Threads::recursive_mutex::lock(), and rmutex.

◆ acquire() [3/3]

void libMesh::Threads::recursive_mutex::scoped_lock::acquire ( recursive_mutex rm)
inline

Definition at line 302 of file threads_tbb.h.

302{ _rm = &rm; _rm->lock(); }

References _rm, and libMesh::Threads::recursive_mutex::lock().

◆ release() [1/3]

void libMesh::Threads::recursive_mutex::scoped_lock::release ( )
inline

Definition at line 177 of file threads_none.h.

177{}

Referenced by ~scoped_lock().

◆ release() [2/3]

void libMesh::Threads::recursive_mutex::scoped_lock::release ( )
inline

Definition at line 202 of file threads_pthread.h.

202{ if (rmutex) rmutex->unlock(); rmutex = nullptr; }

References rmutex, and libMesh::Threads::recursive_mutex::unlock().

◆ release() [3/3]

void libMesh::Threads::recursive_mutex::scoped_lock::release ( )
inline

Definition at line 303 of file threads_tbb.h.

303{ if (_rm) { _rm->unlock(); _rm = nullptr; } }

References _rm, and libMesh::Threads::recursive_mutex::unlock().

Member Data Documentation

◆ _rm

recursive_mutex* libMesh::Threads::recursive_mutex::scoped_lock::_rm
private

Definition at line 306 of file threads_tbb.h.

Referenced by acquire(), release(), scoped_lock(), and scoped_lock().

◆ rmutex

recursive_mutex* libMesh::Threads::recursive_mutex::scoped_lock::rmutex
private

Definition at line 205 of file threads_pthread.h.

Referenced by acquire(), release(), scoped_lock(), and scoped_lock().


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