diff options
author | Scott Lobdell <slobdell@google.com> | 2019-08-25 12:20:54 -0700 |
---|---|---|
committer | Scott Lobdell <slobdell@google.com> | 2019-08-25 12:20:54 -0700 |
commit | 4f9bfdcaca2414c8959986f0a4d73f16cb15e1c4 (patch) | |
tree | 540bab5498d276cbbfad24c48a7ff989ee8b920a /libc/include/semaphore.h | |
parent | bfda022dd6fbbcea60e9f52496d90ece514b32da (diff) | |
parent | f77cc9b224c35fa7d1d71e7c374ef19e47b5f6a5 (diff) |
Merge RP1A.190822.001
Change-Id: Iaf90835a99d87f6246798efd2cea6fe9f750ea18
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); |