2022-11-07 10:22:09 +00:00
|
|
|
#ifndef COSMOPOLITAN_THIRD_PARTY_NSYNC_MU_SEMAPHORE_INTERNAL_H_
|
|
|
|
#define COSMOPOLITAN_THIRD_PARTY_NSYNC_MU_SEMAPHORE_INTERNAL_H_
|
|
|
|
#include "third_party/nsync/mu_semaphore.h"
|
|
|
|
#include "third_party/nsync/time.h"
|
|
|
|
COSMOPOLITAN_C_START_
|
|
|
|
|
2024-07-06 06:13:20 +00:00
|
|
|
bool nsync_mu_semaphore_init_futex(nsync_semaphore *);
|
2022-11-07 10:22:09 +00:00
|
|
|
errno_t nsync_mu_semaphore_p_futex(nsync_semaphore *);
|
2024-09-03 06:37:50 +00:00
|
|
|
errno_t nsync_mu_semaphore_p_with_deadline_futex(nsync_semaphore *, int, nsync_time);
|
2022-11-07 10:22:09 +00:00
|
|
|
void nsync_mu_semaphore_v_futex(nsync_semaphore *);
|
|
|
|
|
2024-07-06 06:13:20 +00:00
|
|
|
bool nsync_mu_semaphore_init_sem(nsync_semaphore *);
|
2022-11-07 10:22:09 +00:00
|
|
|
errno_t nsync_mu_semaphore_p_sem(nsync_semaphore *);
|
2024-09-03 06:37:50 +00:00
|
|
|
errno_t nsync_mu_semaphore_p_with_deadline_sem(nsync_semaphore *, int, nsync_time);
|
2022-11-07 10:22:09 +00:00
|
|
|
void nsync_mu_semaphore_v_sem(nsync_semaphore *);
|
|
|
|
|
2024-07-06 06:13:20 +00:00
|
|
|
bool nsync_mu_semaphore_init_gcd(nsync_semaphore *);
|
2023-06-04 08:57:10 +00:00
|
|
|
errno_t nsync_mu_semaphore_p_gcd(nsync_semaphore *);
|
2024-09-03 06:37:50 +00:00
|
|
|
errno_t nsync_mu_semaphore_p_with_deadline_gcd(nsync_semaphore *, int, nsync_time);
|
2023-06-04 08:57:10 +00:00
|
|
|
void nsync_mu_semaphore_v_gcd(nsync_semaphore *);
|
|
|
|
|
2022-11-07 10:22:09 +00:00
|
|
|
COSMOPOLITAN_C_END_
|
|
|
|
#endif /* COSMOPOLITAN_THIRD_PARTY_NSYNC_MU_SEMAPHORE_INTERNAL_H_ */
|