Hallo, dies ist ein Test.
PWD: /www/data-lst1/unixsoft/unixsoft/kaempfer/.public_html
Running in File Mode
Relative path: ./../../../../../../usr/include/pixman-1/../threads.h
Real path: /usr/include/threads.h
Zurück
/* * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved. */ /* * This file declares all of the functions specified by the C11 standard, * INCITS/ISO/IEC 9899-2011, in section 7.26 "Threads <threads.h>". * * C11 threads are a simple mapping of the C11 interfaces * onto the richer pthreads interfaces. * * Structures defined herein are simply aliases for the structures * defined in <pthreads.h>, with the names changed to avoid namespace * pollution when compiling in strict C11 mode. */ #ifndef _THREADS_H #define _THREADS_H #include <time.h> #ifdef __cplusplus extern "C" { #endif typedef unsigned int thrd_t; typedef unsigned int tss_t; typedef void (*tss_dtor_t)(void *); typedef int (*thrd_start_t)(void *); typedef struct { unsigned long long int __mxt[3]; } mtx_t; typedef struct { unsigned long long int __cnd[2]; } cnd_t; typedef struct { unsigned long long int __once[4]; } once_flag; #define ONCE_FLAG_INIT { {0, 0, 0, 0} } enum { mtx_plain = 0x0, mtx_timed = 0x1, mtx_recursive = 0x2 }; enum { thrd_success = 0, thrd_busy, thrd_nomem, thrd_timedout, thrd_error }; #define TSS_DTOR_ITERATIONS (-1) /* unlimited */ #if !defined(_STDC_C11) #define _Thread_local __thread #endif #define thread_local _Thread_local #if !defined(_STDC_C11) #define _Noreturn __sun_attr__((__noreturn__)) #endif extern void call_once(once_flag *, void (*)(void)); extern int cnd_broadcast(cnd_t *); extern void cnd_destroy(cnd_t *); extern int cnd_init(cnd_t *); extern int cnd_signal(cnd_t *); extern int cnd_timedwait(cnd_t *_RESTRICT_KYWD, mtx_t *_RESTRICT_KYWD, const struct timespec *_RESTRICT_KYWD); extern int cnd_wait(cnd_t *, mtx_t *); extern void mtx_destroy(mtx_t *); extern int mtx_init(mtx_t *, int); extern int mtx_lock(mtx_t *); extern int mtx_timedlock(mtx_t *_RESTRICT_KYWD, const struct timespec *_RESTRICT_KYWD); extern int mtx_trylock(mtx_t *); extern int mtx_unlock(mtx_t *); extern int thrd_create(thrd_t *, thrd_start_t, void *); extern thrd_t thrd_current(void); extern int thrd_detach(thrd_t); extern int thrd_equal(thrd_t, thrd_t); extern _Noreturn void thrd_exit(int); extern int thrd_join(thrd_t, int *); extern int thrd_sleep(const struct timespec *, struct timespec *); extern void thrd_yield(void); extern int tss_create(tss_t *, tss_dtor_t); extern void tss_delete(tss_t); extern void *tss_get(tss_t); extern int tss_set(tss_t, void *); #ifdef __cplusplus } #endif #endif /* _THREADS_H */