SUMO - Simulation of Urban MObility
fast_mutex.h File Reference
#include "_nvwa.h"
#include "c++11.h"
Include dependency graph for fast_mutex.h:

Go to the source code of this file.

Data Structures

class  fast_mutex
 
class  fast_mutex_autolock
 

Macros

#define __VOLATILE
 
#define _FAST_MUTEX_ASSERT(_Expr, _Msg)   ((void)0)
 
#define _FAST_MUTEX_CHECK_INITIALIZATION   1
 
#define _NOTHREADS
 
#define NVWA_USE_CXX11_MUTEX   0
 

Detailed Description

A fast mutex implementation for POSIX and Win32.

Date
2013-08-02

Definition in file fast_mutex.h.

Macro Definition Documentation

#define __VOLATILE

Macro alias to `volatile' semantics. Here it is not truly volatile since it is in a single-threaded environment.

Definition at line 350 of file fast_mutex.h.

#define _FAST_MUTEX_ASSERT (   _Expr,
  _Msg 
)    ((void)0)

Macro for fast_mutex assertions. Fake version (for release mode).

Definition at line 121 of file fast_mutex.h.

Referenced by fast_mutex::lock(), fast_mutex::unlock(), and fast_mutex::~fast_mutex().

#define _FAST_MUTEX_CHECK_INITIALIZATION   1

Macro to control whether to check for initialization status for each lock/unlock operation. Defining it to a non-zero value will enable the check, so that the construction/destruction of a static object using a static fast_mutex not yet constructed or already destroyed will work (with lock/unlock operations ignored). Defining it to zero will disable to check.

Definition at line 101 of file fast_mutex.h.

#define _NOTHREADS

Definition at line 77 of file fast_mutex.h.

#define NVWA_USE_CXX11_MUTEX   0

Definition at line 72 of file fast_mutex.h.