Ruby  1.9.3p484(2013-11-22revision43786)
Macros | Typedefs | Functions
ruby_atomic.h File Reference

Go to the source code of this file.

Macros

#define NEED_RUBY_ATOMIC_EXCHANGE
 
#define ATOMIC_SET(var, val)   (void)((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))
 
#define ATOMIC_SIZE_ADD(var, val)   (void)((var) += (val))
 
#define ATOMIC_SIZE_SUB(var, val)   (void)((var) -= (val))
 
#define ATOMIC_SIZE_INC(var)   ((var)++)
 
#define ATOMIC_SIZE_DEC(var)   ((var)--)
 
#define ATOMIC_SIZE_EXCHANGE(var, val)   atomic_size_exchange(&(var), (val))
 

Typedefs

typedef int rb_atomic_t
 

Functions

rb_atomic_t ruby_atomic_exchange (rb_atomic_t *ptr, rb_atomic_t val)
 
static size_t atomic_size_exchange (size_t *ptr, size_t val)
 

Macro Definition Documentation

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

Definition at line 97 of file ruby_atomic.h.

Referenced by rb_get_next_signal().

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

Definition at line 99 of file ruby_atomic.h.

Referenced by rb_threadptr_execute_interrupts_common().

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

Definition at line 96 of file ruby_atomic.h.

Referenced by sighandler().

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

Definition at line 98 of file ruby_atomic.h.

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

Definition at line 95 of file ruby_atomic.h.

#define ATOMIC_SIZE_ADD (   var,
  val 
)    (void)((var) += (val))

Definition at line 101 of file ruby_atomic.h.

#define ATOMIC_SIZE_DEC (   var)    ((var)--)

Definition at line 104 of file ruby_atomic.h.

#define ATOMIC_SIZE_EXCHANGE (   var,
  val 
)    atomic_size_exchange(&(var), (val))

Definition at line 105 of file ruby_atomic.h.

#define ATOMIC_SIZE_INC (   var)    ((var)++)

Definition at line 103 of file ruby_atomic.h.

#define ATOMIC_SIZE_SUB (   var,
  val 
)    (void)((var) -= (val))

Definition at line 102 of file ruby_atomic.h.

#define NEED_RUBY_ATOMIC_EXCHANGE

Definition at line 92 of file ruby_atomic.h.

Typedef Documentation

typedef int rb_atomic_t

Definition at line 91 of file ruby_atomic.h.

Function Documentation

static size_t atomic_size_exchange ( size_t *  ptr,
size_t  val 
)
inlinestatic

Definition at line 107 of file ruby_atomic.h.

rb_atomic_t ruby_atomic_exchange ( rb_atomic_t ptr,
rb_atomic_t  val 
)

Definition at line 26 of file signal.c.