VLC
4.0.0-dev
|
Atomic operations do not require locking, but they are not very powerful. More...
Go to the source code of this file.
Data Structures | |
struct | vlc_atomic_rc_t |
Macros | |
#define | VLC_ATOMIC_H |
Typedefs | |
typedef struct vlc_atomic_rc_t | vlc_atomic_rc_t |
Functions | |
static void | vlc_atomic_rc_init (vlc_atomic_rc_t *rc) |
Init the RC to 1. More... | |
static void | vlc_atomic_rc_inc (vlc_atomic_rc_t *rc) |
Increment the RC. More... | |
static bool | vlc_atomic_rc_dec (vlc_atomic_rc_t *rc) |
Decrement the RC and return true if it reaches 0. More... | |
Atomic operations do not require locking, but they are not very powerful.
#define VLC_ATOMIC_H |
typedef struct vlc_atomic_rc_t vlc_atomic_rc_t |
|
inlinestatic |
Decrement the RC and return true if it reaches 0.
References vlc_atomic_rc_t::refs, and vlc_assert.
Referenced by addon_entry_Release(), aout_Release(), EsRelease(), input_item_Release(), input_resource_Release(), input_source_Release(), ReqRelease(), RequestRelease(), vlc_decoder_device_Release(), vlc_gl_Release(), vlc_media_source_Release(), vlc_media_tree_Release(), vlc_player_title_list_Release(), vlc_playlist_item_Release(), vlc_renderer_item_release(), vlc_video_context_Release(), and vout_Release().
|
inlinestatic |
Increment the RC.
References vlc_atomic_rc_t::refs, vlc_assert, and VLC_UNUSED.
Referenced by addon_entry_Hold(), aout_Hold(), EsHold(), input_item_Hold(), input_resource_Hold(), input_source_Hold(), ReqHold(), RequestHold(), vlc_decoder_device_Hold(), vlc_gl_Hold(), vlc_media_source_Hold(), vlc_media_tree_Hold(), vlc_player_title_list_Hold(), vlc_playlist_item_Hold(), vlc_renderer_item_hold(), vlc_video_context_Hold(), and vout_Hold().
|
inlinestatic |
Init the RC to 1.
References vlc_atomic_rc_t::refs.
Referenced by addon_entry_New(), aout_New(), EsOutAddLocked(), input_fetcher_Push(), input_item_NewExt(), input_resource_New(), InputSourceNew(), ReqCreate(), vlc_decoder_device_Create(), vlc_gl_Create(), vlc_media_source_New(), vlc_media_tree_New(), vlc_player_title_list_Create(), vlc_playlist_item_New(), vlc_renderer_item_new(), vlc_video_context_Create(), and vout_CreateCommon().