diff options
Diffstat (limited to 'libc/include/semaphore.h')
-rw-r--r-- | libc/include/semaphore.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libc/include/semaphore.h b/libc/include/semaphore.h index 01d685b4b..5d66f7ec0 100644 --- a/libc/include/semaphore.h +++ b/libc/include/semaphore.h @@ -30,6 +30,7 @@ #define _SEMAPHORE_H #include <sys/cdefs.h> +#include <sys/types.h> __BEGIN_DECLS @@ -44,16 +45,19 @@ typedef struct { #define SEM_FAILED __BIONIC_CAST(reinterpret_cast, sem_t*, 0) +int sem_clockwait(sem_t* __sem, clockid_t __clock, const struct timespec* __ts) __INTRODUCED_IN(30); int sem_destroy(sem_t* __sem); int sem_getvalue(sem_t* __sem, int* __value); int sem_init(sem_t* __sem, int __shared, unsigned int __value); int sem_post(sem_t* __sem); int sem_timedwait(sem_t* __sem, const struct timespec* __ts); /* - * POSIX only supports using sem_timedwait() with CLOCK_REALTIME, however that is typically - * inappropriate, since that clock can change dramatically, causing the timeout to either + * POSIX historically only supported using sem_timedwait() with CLOCK_REALTIME, however that is + * typically inappropriate, since that clock can change dramatically, causing the timeout to either * expire earlier or much later than intended. This function is added to use a timespec based * on CLOCK_MONOTONIC that does not suffer from this issue. + * Note that sem_clockwait() allows specifying an arbitrary clock and has superseded this + * function. */ int sem_timedwait_monotonic_np(sem_t* __sem, const struct timespec* __ts) __INTRODUCED_IN(28); int sem_trywait(sem_t* __sem); |