X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Fpthread.h;h=bba9587e7b026b13df3e6d9aaae5cf1ce7ecd106;hb=ebd8ef50d5012733d86ed4a6834ca6d776b069ae;hp=6eee14cbb2f89ac5daaa0a694977f4aab309dcf9;hpb=5c6443ac42ba00ad3a0b4e98db4cc8f45596ca93;p=musl diff --git a/include/pthread.h b/include/pthread.h index 6eee14cb..bba9587e 100644 --- a/include/pthread.h +++ b/include/pthread.h @@ -63,6 +63,7 @@ extern "C" { #define PTHREAD_CANCEL_ENABLE 0 #define PTHREAD_CANCEL_DISABLE 1 +#define PTHREAD_CANCEL_MASKED 2 #define PTHREAD_CANCEL_DEFERRED 0 #define PTHREAD_CANCEL_ASYNCHRONOUS 1 @@ -78,13 +79,12 @@ int pthread_detach(pthread_t); _Noreturn void pthread_exit(void *); int pthread_join(pthread_t, void **); -#ifdef __GNUC__ -__attribute__((const)) -#endif pthread_t pthread_self(void); int pthread_equal(pthread_t, pthread_t); +#ifndef __cplusplus #define pthread_equal(x,y) ((x)==(y)) +#endif int pthread_setcancelstate(int, int *); int pthread_setcanceltype(int, int *); @@ -209,6 +209,18 @@ void _pthread_cleanup_pop(struct __ptcb *, int); #define pthread_cleanup_push(f, x) do { struct __ptcb __cb; _pthread_cleanup_push(&__cb, f, x); #define pthread_cleanup_pop(r) _pthread_cleanup_pop(&__cb, (r)); } while(0) +#ifdef _GNU_SOURCE +struct cpu_set_t; +int pthread_getaffinity_np(pthread_t, size_t, struct cpu_set_t *); +int pthread_setaffinity_np(pthread_t, size_t, const struct cpu_set_t *); +int pthread_getattr_np(pthread_t, pthread_attr_t *); +int pthread_setname_np(pthread_t, const char *); +int pthread_getattr_default_np(pthread_attr_t *); +int pthread_setattr_default_np(const pthread_attr_t *); +int pthread_tryjoin_np(pthread_t, void **); +int pthread_timedjoin_np(pthread_t, void **, const struct timespec *); +#endif + #ifdef __cplusplus } #endif