Atomic operations do not require locking, but they are not very powerful. More...
Go to the source code of this file.
Defines | |
| #define | VLC_ATOMIC_INIT(val) { (val) } |
| Static initializer for vlc_atomic_t. | |
Functions | |
| VLC_API uintptr_t | vlc_atomic_get (const vlc_atomic_t *) |
| VLC_API uintptr_t | vlc_atomic_set (vlc_atomic_t *, uintptr_t) |
| VLC_API uintptr_t | vlc_atomic_add (vlc_atomic_t *, uintptr_t) |
| static uintptr_t | vlc_atomic_sub (vlc_atomic_t *atom, uintptr_t v) |
| static uintptr_t | vlc_atomic_inc (vlc_atomic_t *atom) |
| static uintptr_t | vlc_atomic_dec (vlc_atomic_t *atom) |
| VLC_API uintptr_t | vlc_atomic_swap (vlc_atomic_t *, uintptr_t) |
| VLC_API uintptr_t | vlc_atomic_compare_swap (vlc_atomic_t *, uintptr_t, uintptr_t) |
| static float | vlc_atomic_getf (const vlc_atomic_t *atom) |
| Helper to retrieve a single precision from an atom. | |
| static float | vlc_atomic_setf (vlc_atomic_t *atom, float f) |
| Helper to store a single precision into an atom. | |
Atomic operations do not require locking, but they are not very powerful.
| #define VLC_ATOMIC_INIT | ( | val | ) | { (val) } |
Static initializer for vlc_atomic_t.
Referenced by input_item_NewWithType().
| VLC_API uintptr_t vlc_atomic_add | ( | vlc_atomic_t * | , | |
| uintptr_t | ||||
| ) |
References vlc_atomic_t::s, vlc_atomic_t::u, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by vlc_atomic_inc(), vlc_atomic_sub(), and vlc_timer_thread().
| VLC_API uintptr_t vlc_atomic_compare_swap | ( | vlc_atomic_t * | , | |
| uintptr_t | , | |||
| uintptr_t | ||||
| ) |
References vlc_atomic_t::s, vlc_atomic_t::u, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by aout_InputRequestRestart().
| static uintptr_t vlc_atomic_dec | ( | vlc_atomic_t * | atom | ) | [inline, static] |
References vlc_atomic_sub().
Referenced by picture_Release(), and vlc_release().
| VLC_API uintptr_t vlc_atomic_get | ( | const vlc_atomic_t * | ) |
References vlc_atomic_t::u, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by picture_IsReferenced(), picture_pool_Delete(), picture_pool_Get(), picture_pool_NonEmpty(), picture_pool_Reserve(), PictureDestroy(), and vlc_atomic_getf().
| static float vlc_atomic_getf | ( | const vlc_atomic_t * | atom | ) | [inline, static] |
Helper to retrieve a single precision from an atom.
References vlc_atomic_get().
Referenced by aout_DecPlay().
| static uintptr_t vlc_atomic_inc | ( | vlc_atomic_t * | atom | ) | [inline, static] |
References vlc_atomic_add().
Referenced by input_item_NewWithType(), picture_Hold(), and vlc_hold().
| VLC_API uintptr_t vlc_atomic_set | ( | vlc_atomic_t * | , | |
| uintptr_t | ||||
| ) |
| static float vlc_atomic_setf | ( | vlc_atomic_t * | atom, | |
| float | f | |||
| ) | [inline, static] |
Helper to store a single precision into an atom.
References vlc_atomic_set().
Referenced by ReplayGainCallback().
| static uintptr_t vlc_atomic_sub | ( | vlc_atomic_t * | atom, | |
| uintptr_t | v | |||
| ) | [inline, static] |
References vlc_atomic_add().
Referenced by vlc_atomic_dec().
| VLC_API uintptr_t vlc_atomic_swap | ( | vlc_atomic_t * | , | |
| uintptr_t | ||||
| ) |
References vlc_atomic_t::s, vlc_atomic_t::u, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by aout_CheckRestart(), and vlc_timer_getoverrun().
1.7.1