ESBMC
Efficient SMT-based Context-Bounded Model Checker
Loading...
Searching...
No Matches
threads_lib.c File Reference
#include <pthread.h>
#include <stddef.h>
#include <threads.h>
Include dependency graph for threads_lib.c:

Functions

int nondet_int (void)
_Bool nondet_bool (void)
int thrd_create (thrd_t *thr, thrd_start_t func, void *arg)
int thrd_equal (thrd_t a, thrd_t b)
thrd_t thrd_current (void)
int thrd_sleep (const struct timespec *duration, struct timespec *remaining)
void thrd_yield (void)
_Noreturn void thrd_exit (int res)
int thrd_detach (thrd_t thr)
int thrd_join (thrd_t thr, int *res)
int mtx_init (mtx_t *mtx, int type)
int mtx_lock (mtx_t *mtx)
int mtx_timedlock (mtx_t *__restrict mtx, const struct timespec *__restrict ts)
int mtx_trylock (mtx_t *mtx)
int mtx_unlock (mtx_t *mtx)
void mtx_destroy (mtx_t *mtx)
void call_once (once_flag *flag, void(*func)(void))
int cnd_init (cnd_t *cond)
int cnd_signal (cnd_t *cond)
int cnd_broadcast (cnd_t *cond)
int cnd_wait (cnd_t *cond, mtx_t *mtx)
int cnd_timedwait (cnd_t *__restrict cond, mtx_t *__restrict mtx, const struct timespec *__restrict ts)
void cnd_destroy (cnd_t *cond)
int tss_create (tss_t *key, tss_dtor_t dtor)
void * tss_get (tss_t key)
int tss_set (tss_t key, void *val)
void tss_delete (tss_t key)

Function Documentation

◆ call_once()

void call_once ( once_flag * flag,
void(* func )(void) )

◆ cnd_broadcast()

int cnd_broadcast ( cnd_t * cond)

◆ cnd_destroy()

void cnd_destroy ( cnd_t * cond)

◆ cnd_init()

int cnd_init ( cnd_t * cond)

◆ cnd_signal()

int cnd_signal ( cnd_t * cond)

◆ cnd_timedwait()

int cnd_timedwait ( cnd_t *__restrict cond,
mtx_t *__restrict mtx,
const struct timespec *__restrict ts )

◆ cnd_wait()

int cnd_wait ( cnd_t * cond,
mtx_t * mtx )

◆ mtx_destroy()

void mtx_destroy ( mtx_t * mtx)

◆ mtx_init()

int mtx_init ( mtx_t * mtx,
int type )

◆ mtx_lock()

int mtx_lock ( mtx_t * mtx)

◆ mtx_timedlock()

int mtx_timedlock ( mtx_t *__restrict mtx,
const struct timespec *__restrict ts )

◆ mtx_trylock()

int mtx_trylock ( mtx_t * mtx)

◆ mtx_unlock()

int mtx_unlock ( mtx_t * mtx)

◆ nondet_bool()

_Bool nondet_bool ( void )

◆ nondet_int()

int nondet_int ( void )

◆ thrd_create()

int thrd_create ( thrd_t * thr,
thrd_start_t func,
void * arg )

◆ thrd_current()

thrd_t thrd_current ( void )

◆ thrd_detach()

int thrd_detach ( thrd_t thr)

◆ thrd_equal()

int thrd_equal ( thrd_t a,
thrd_t b )

◆ thrd_exit()

_Noreturn void thrd_exit ( int res)

◆ thrd_join()

int thrd_join ( thrd_t thr,
int * res )

◆ thrd_sleep()

int thrd_sleep ( const struct timespec * duration,
struct timespec * remaining )

◆ thrd_yield()

void thrd_yield ( void )

◆ tss_create()

int tss_create ( tss_t * key,
tss_dtor_t dtor )

◆ tss_delete()

void tss_delete ( tss_t key)

◆ tss_get()

void * tss_get ( tss_t key)

◆ tss_set()

int tss_set ( tss_t key,
void * val )