VLC 4.0.0-dev
Loading...
Searching...
No Matches

Read-Copy-Update (RCU) definitions. More...

Include dependency graph for rcu.c:

Data Structures

struct  vlc_rcu_generation
 
struct  vlc_rcu_thread
 

Functions

bool vlc_rcu_read_held (void)
 Checks if the thread is in an read-side RCU critical section.
 
void vlc_rcu_read_lock (void)
 Begins a read-side RCU critical section.
 
void vlc_rcu_read_unlock (void)
 Ends a read-side RCU critical section.
 
void vlc_rcu_synchronize (void)
 Waits for completion of earlier read-side RCU critical section.
 

Variables

static thread_local struct vlc_rcu_thread current
 
static struct vlc_rcu_generation *_Atomic generation = &gens[0]
 
static vlc_mutex_t writer_lock = { .value = 0, .recursion = 0, .owner = 0, }
 
static struct vlc_rcu_generation gens [2]
 

Detailed Description

Read-Copy-Update (RCU) definitions.

Variable Documentation

◆ current

◆ generation

static struct vlc_rcu_generation *_Atomic generation = &gens[0]
static

◆ gens

struct vlc_rcu_generation gens[2]
static

Referenced by vlc_rcu_synchronize().

◆ writer_lock

vlc_mutex_t writer_lock = { .value = 0, .recursion = 0, .owner = 0, }
static

Referenced by vlc_rcu_synchronize().