1 /* 2 * Copyright (c) 2018 Intel Corporation 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 #ifndef ZEPHYR_INCLUDE_POSIX_SEMAPHORE_H_ 7 #define ZEPHYR_INCLUDE_POSIX_SEMAPHORE_H_ 8 9 #include <posix/time.h> 10 #include "posix_types.h" 11 12 #ifdef __cplusplus 13 extern "C" { 14 #endif 15 16 int sem_destroy(sem_t *semaphore); 17 int sem_getvalue(sem_t *restrict semaphore, int *restrict value); 18 int sem_init(sem_t *semaphore, int pshared, unsigned int value); 19 int sem_post(sem_t *semaphore); 20 int sem_timedwait(sem_t *restrict semaphore, struct timespec *restrict abstime); 21 int sem_trywait(sem_t *semaphore); 22 int sem_wait(sem_t *semaphore); 23 24 #ifdef __cplusplus 25 } 26 #endif 27 28 #endif /* ZEPHYR_INCLUDE_POSIX_SEMAPHORE_H_ */ 29