Main MRPT website > C++ reference for MRPT 1.4.0
Classes | Namespaces | Macros
CCriticalSection.h File Reference
#include <mrpt/utils/CReferencedMemBlock.h>
#include <string>

Go to the source code of this file.

Classes

class  mrpt::synch::CCriticalSection
 This class provides simple critical sections functionality. More...
 
class  mrpt::synch::CCriticalSectionLocker
 A class acquiring a CCriticalSection at its constructor, and releasing it at destructor. More...
 

Namespaces

 mrpt
 This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
 
 mrpt::utils
 Classes for serialization, sockets, ini-file manipulation, streams, list of properties-values, timewatch, extensions to STL.
 
 mrpt::synch
 This namespace provides multitask, synchronization utilities.
 

Macros

#define THREADSAFE_OPERATION(_CRITSECT_OBJ, CODE_TO_EXECUTE)
 A macro for protecting a given piece of code with a critical section; for example: More...
 

Macro Definition Documentation

#define THREADSAFE_OPERATION (   _CRITSECT_OBJ,
  CODE_TO_EXECUTE 
)
Value:
{ \
mrpt::synch::CCriticalSectionLocker lock(&_CRITSECT_OBJ); \
CODE_TO_EXECUTE \
}

A macro for protecting a given piece of code with a critical section; for example:

1 CCriticalSection cs;
2 MyObject obj;
3 ...
4 
5 THREADSAFE_OPERATION(cs, obj.foo(); )
6 ...
7 THREADSAFE_OPERATION(cs, obj.foo(); obj.bar(); }
See also
CCriticalSectionLocker, CThreadSafeVariable

Definition at line 118 of file CCriticalSection.h.




Page generated by Doxygen 1.8.11 for MRPT 1.4.0 SVN:Unversioned directory at Sun Jul 10 11:38:36 UTC 2016