Main MRPT website > C++ reference for MRPT 1.5.6
List of all members | Public Member Functions | Private Attributes
mrpt::synch::CCriticalSectionRecursive Class Reference

Detailed Description

Recursive mutex: allow recursive locks by the owner thread.

See Also
CCriticalSectionLocker, CCriticalSection
Note
[New in MRPT 1.5.0]

Definition at line 66 of file CCriticalSection.h.

#include <mrpt/synch/CCriticalSection.h>

Inheritance diagram for mrpt::synch::CCriticalSectionRecursive:
Inheritance graph

Public Member Functions

 CCriticalSectionRecursive ()
 
virtual ~CCriticalSectionRecursive ()
 
void enter () const MRPT_OVERRIDE
 Enter.

Exceptions
Ifthe calling thread already possesses this critical section (it would be a dead-lock).
More...
 
void leave () const MRPT_OVERRIDE
 Leave.

Exceptions
Ifthe calling thread is not the current owner of the critical section.
More...
 
bool try_enter () const MRPT_OVERRIDE
 Returns true if adquired; false otherwise. More...
 

Private Attributes

voidm_data
 std::recursive_mutex*. Opaque ptr until MRPT 2.0.0 in which we could expose C++11 to user headers More...
 

Constructor & Destructor Documentation

CCriticalSectionRecursive::CCriticalSectionRecursive ( )

Definition at line 66 of file CCriticalSection.cpp.

CCriticalSectionRecursive::~CCriticalSectionRecursive ( )
virtual

Definition at line 70 of file CCriticalSection.cpp.

References m_data.

Member Function Documentation

void CCriticalSectionRecursive::enter ( ) const
virtual
void CCriticalSectionRecursive::leave ( ) const
virtual
bool CCriticalSectionRecursive::try_enter ( ) const
virtual

Returns true if adquired; false otherwise.

Implements mrpt::synch::CAbstractMutex.

Definition at line 89 of file CCriticalSection.cpp.

References m_data.

Member Data Documentation

void* mrpt::synch::CCriticalSectionRecursive::m_data
private

std::recursive_mutex*. Opaque ptr until MRPT 2.0.0 in which we could expose C++11 to user headers

Definition at line 69 of file CCriticalSection.h.

Referenced by enter(), leave(), try_enter(), and ~CCriticalSectionRecursive().




Page generated by Doxygen 1.8.6 for MRPT 1.5.6 Git: 4c65e84 Tue Apr 24 08:18:17 2018 +0200 at mar abr 24 08:26:17 CEST 2018