silcatomic.html
SILC Atomic Operations Interface Header: silcatomic.h
DESCRIPTION
SILC Atomic operations interface provides utility functions to perform
simple operations with integers atomically. This enables fast integer
additions and subtractions safely in multithreaded environment. It is
especially suited for reference counters and similar and is much faster
than using locking. This interface supports 8, 16 and 32 bit integers
and 32 or 64 bit pointers.
On some platforms this interface actually use mutual exclusion lock
instead of true atomic operations, leading into some performace penalty.
Also on some platforms the 8 and 16 bit integers are actually 32 bit
integers.
Fast operations are supported on: x86, x86_64, ia64, PPC
SilcAtomic32
SilcAtomic16
SilcAtomic8
SilcAtomicPointer
silc_atomic_init32
silc_atomic_init16
silc_atomic_init8
silc_atomic_init_pointer
silc_atomic_uninit32
silc_atomic_uninit16
silc_atomic_uninit8
silc_atomic_uninit_pointer
silc_atomic_set_int32
silc_atomic_set_int16
silc_atomic_set_int8
silc_atomic_set_pointer
silc_atomic_get_int32
silc_atomic_get_int16
silc_atomic_get_int8
silc_atomic_get_pointer
silc_atomic_add_int32
silc_atomic_add_int16
silc_atomic_add_int8
silc_atomic_sub_int32
silc_atomic_sub_int16
silc_atomic_sub_int8
silc_atomic_inc32
silc_atomic_inc16
silc_atomic_inc8
silc_atomic_dec32
silc_atomic_dec16
silc_atomic_dec8
silc_atomic_cas32
silc_atomic_cas16
silc_atomic_cas8
silc_atomic_cas_pointer
|