Main MRPT website > C++ reference for MRPT 1.5.3
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. More...
 
void leave () const MRPT_OVERRIDE
 Leave. More...
 
bool try_enter () const MRPT_OVERRIDE
 Returns true if adquired; false otherwise. More...
 

Private Attributes

void * m_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()

mrpt::synch::CCriticalSectionRecursive::CCriticalSectionRecursive ( )

◆ ~CCriticalSectionRecursive()

virtual mrpt::synch::CCriticalSectionRecursive::~CCriticalSectionRecursive ( )
virtual

Member Function Documentation

◆ enter()

void mrpt::synch::CCriticalSectionRecursive::enter ( ) const
virtual

Enter.

Exceptions
Ifthe calling thread already possesses this critical section (it would be a dead-lock).

Implements mrpt::synch::CAbstractMutex.

◆ leave()

void mrpt::synch::CCriticalSectionRecursive::leave ( ) const
virtual

Leave.

Exceptions
Ifthe calling thread is not the current owner of the critical section.

Implements mrpt::synch::CAbstractMutex.

◆ try_enter()

bool mrpt::synch::CCriticalSectionRecursive::try_enter ( ) const
virtual

Returns true if adquired; false otherwise.

Implements mrpt::synch::CAbstractMutex.

Member Data Documentation

◆ m_data

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.




Page generated by Doxygen 1.8.13 for MRPT 1.5.3 at Tue Oct 31 07:27:35 UTC 2017