VLC  4.0.0-dev
Data Structures | Functions | Variables
threads.c File Reference
Include dependency graph for threads.c:

Data Structures

struct  vlc_lock_mark
 

Functions

void vlc_global_mutex (unsigned n, bool acquire)
 Internal handler for global mutexes. More...
 
static int vlc_lock_mark_cmp (const void *a, const void *b)
 
static void vlc_lock_mark (const void *lock, void **rootp)
 
static void vlc_lock_unmark (const void *lock, void **rootp)
 
static bool vlc_lock_marked (const void *lock, void **rootp)
 
void vlc_mutex_mark (const vlc_mutex_t *mutex)
 Marks a mutex locked. More...
 
void vlc_mutex_unmark (const vlc_mutex_t *mutex)
 Unmarks a mutex. More...
 
bool vlc_mutex_marked (const vlc_mutex_t *mutex)
 Checks if a mutex is locked. More...
 

Variables

static _Thread_local void * vlc_mutex_marks = NULL
 

Function Documentation

◆ vlc_lock_mark()

static void vlc_lock_mark ( const void *  lock,
void **  rootp 
)
static

◆ vlc_lock_mark_cmp()

static int vlc_lock_mark_cmp ( const void *  a,
const void *  b 
)
static

◆ vlc_lock_marked()

static bool vlc_lock_marked ( const void *  lock,
void **  rootp 
)
static

References lock, tfind(), and vlc_lock_mark_cmp().

Referenced by vlc_mutex_marked().

◆ vlc_lock_unmark()

static void vlc_lock_unmark ( const void *  lock,
void **  rootp 
)
static

◆ vlc_mutex_mark()

void vlc_mutex_mark ( const vlc_mutex_t mutex)

Marks a mutex locked.

References vlc_lock_mark(), and vlc_mutex_marks.

Referenced by vlc_mutex_lock(), and vlc_mutex_trylock().

◆ vlc_mutex_unmark()

void vlc_mutex_unmark ( const vlc_mutex_t mutex)

Unmarks a mutex.

References vlc_lock_unmark(), and vlc_mutex_marks.

Referenced by vlc_mutex_unlock().

Variable Documentation

◆ vlc_mutex_marks

_Thread_local void* vlc_mutex_marks = NULL
static