#include <coil/Mutex.h>
#include <coil/Guard.h>
マクロ定義 | |
| #define | COIL_USES_ATOMIC_OP coil::Mutex __mutex; |
| #define | atomic_add(x, y) |
| #define | atomic_incr(x) |
| #define | atomic_decr(x) |
| #define | atomic_exchange_add(x, y) exchange_add(x, y, &__mutex) |
関数 | |
| int | exchange_add (int *x, int y, coil::Mutex *mutex) |
$Id$
| #define atomic_add | ( | x, | |||
| y | ) |
値:
{ \
coil::Guard<coil::Mutex> guard(__mutex); \
*x = *x + y; \
}
| #define atomic_decr | ( | x | ) |
値:
{ \
coil::Guard<coil::Mutex> guard(__mutex); \
--(*x); \
}
| #define atomic_exchange_add | ( | x, | |||
| y | ) | exchange_add(x, y, &__mutex) |
| #define atomic_incr | ( | x | ) |
| #define COIL_USES_ATOMIC_OP coil::Mutex __mutex; |
| int exchange_add | ( | int * | x, | |
| int | y, | |||
| coil::Mutex * | mutex | |||
| ) |
1.5.5