| QxOrm 1.1.8 C++ Object Relational Mapping library

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Directories

- File List
- File Members

Classes | Namespaces | Defines
fast_mutex.h File Reference
QxMemLeak : QxOrm library memory leak detection (by Wu Yongwei)
`#include <stdio.h>`
`#include <stdlib.h>`

Go to the source code of this file.

## Classes
class | qx::memory::fast_mutex
class | qx::memory::fast_mutex_autolock
## Namespaces
namespace | qx

| Root namespace for all QxOrm library features.
namespace | qx::memory

| QxOrm library memory leak detection (by Wu Yongwei)
## Defines
#define | _NOTHREADS
#define | _FAST_MUTEX_CHECK_INITIALIZATION 1
#define | _FAST_MUTEX_ASSERT(_Expr, _Msg)
#define | __VOLATILE

## Detailed Description

A fast mutex implementation for POSIX and Win32.

Version:
  1.18, 2005/05/06

Author:
  Wu Yongwei

Definition in file fast_mutex.h.

## Define 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 287 of file fast_mutex.h.

#define _FAST_MUTEX_ASSERT | ( |  | _Expr,
|  |  | _Msg
| ) |  |

Value:

    if (!(_Expr)) { \
                fprintf(stderr, "fast_mutex::%s\n", _Msg); \
                abort(); \
            }

Macro for fast_mutex assertions. Real version (for debug mode).

Definition at line 103 of file fast_mutex.h.

#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 89 of file fast_mutex.h.

#define _NOTHREADS

Definition at line 67 of file fast_mutex.h.

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines