atomic.h File Reference

Go to the source code of this file.

## Macros

#define | ATOMIC_SET(var, val) ((var) = (val))
#define | ATOMIC_INC(var) (++(var))
#define | ATOMIC_DEC(var) (--(var))
#define | ATOMIC_OR(var, val) ((var) |= (val))
#define | ATOMIC_EXCHANGE(var, val) ruby_atomic_exchange(&(var), (val))

## Typedefs

typedef int | rb_atomic_t

## Functions

rb_atomic_t | ruby_atomic_exchange (rb_atomic_t *ptr, rb_atomic_t val)

## Macro Definition Documentation

#define ATOMIC_DEC | ( |  | var | ) | (--(var))

Definition at line 51 of file atomic.h.

Referenced by rb_get_next_signal().

#define ATOMIC_EXCHANGE | ( |  | var,
|  |  | val
| ) |  | ruby_atomic_exchange(&(var), (val))

Definition at line 53 of file atomic.h.

Referenced by rb_threadptr_execute_interrupts_common().

#define ATOMIC_INC | ( |  | var | ) | (++(var))

Definition at line 50 of file atomic.h.

Referenced by sighandler().

#define ATOMIC_OR | ( |  | var,
|  |  | val
| ) |  | ((var) |= (val))

Definition at line 52 of file atomic.h.

#define ATOMIC_SET | ( |  | var,
|  |  | val
| ) |  | ((var) = (val))

Definition at line 49 of file atomic.h.

## Typedef Documentation

typedef int rb_atomic_t

Definition at line 46 of file atomic.h.

## Function Documentation

rb_atomic_t ruby_atomic_exchange | ( | rb_atomic_t * | ptr,
|  | rb_atomic_t | val
| ) |  |

Definition at line 23 of file signal.c.