P99
Macros | Typedefs | Enumerations | Functions
p99_threads_posix.h File Reference

Go to the source code of this file.

Macros

#define main   p99_threads_main
 
#define P99_ONCE_FLAG_INIT   { { 0 } }
 expands to a value that can be used to initialize an object of type p99_once_flag More...
 
#define TSS_DTOR_ITERATIONS   1
 expands to an integer constant expression representing the maximum number of times that destructors will be called when a thread terminates More...
 

Typedefs

typedef int(* thrd_start_t) (void *)
 function pointer type int (*)(void*) that is passed to ::thrd_create to create a new thread More...
 

Enumerations

enum  mtx_type {
  mtx_plain = 0, mtx_recursive = 1, mtx_timed = 2, mtx_normal = 4,
  mtx_errorcheck = 8, mtx_extras = (mtx_normal | mtx_errorcheck | mtx_recursive)
}
 C11 mutex types. More...
 

Functions

 P99_DECLARE_THREAD_LOCAL (p00_thrd *, p00_thrd_local)
 
 P99_ENC_DECLARE (pthread_cond_t, cnd_t)
 complete object type that holds an identifier for a condition variable More...
 
 P99_ENC_DECLARE (pthread_mutex_t, mtx_t)
 complete object type that holds an identifier for a mutex More...
 
 P99_ENC_DECLARE (struct p00_thrd *, thrd_t)
 complete object type that holds an identifier for a thread More...
 
 P99_MAIN_INTERCEPT (p99_threads_main)
 
 P99_SETJMP_INLINE (p00_thrd_create) void *p00_thrd_create(void *p00_context)
 
int p99_threads_main (int, char *[])
 A replacement name for the users main function, experimental. More...
 
 P99_WEAK (p00_foreign_cleanup) void p00_foreign_cleanup(void)
 
 P99_WEAK (p00_foreign_nb) atomic_size_t p00_foreign_nb
 
 P99_WEAK (p00_foreign_tab) p00_thrd **p00_foreign_tab
 
 P99_WEAK (p00_threads_main) int p00_threads_main(void *p00_arg)