One-time atomic countdown latches
include/sync/once_latch.h View source View on GitHubStructs
Section titled “Structs”once_latch
Section titled “once_latch” struct once_latch (1 field) source
§
atomic_uint64_t count Functions
Section titled “Functions”once_latch_init
Section titled “once_latch_init”void once_latch_init(struct once_latch *latch, uint64_t count) source once_latch_count_down
Section titled “once_latch_count_down”bool once_latch_count_down(struct once_latch *latch) source once_latch_is_ready
Section titled “once_latch_is_ready”bool once_latch_is_ready(const struct once_latch *latch) source once_latch_get_count
Section titled “once_latch_get_count”uint64_t once_latch_get_count(const struct once_latch *latch) source once_latch_spin_wait
Section titled “once_latch_spin_wait”void once_latch_spin_wait(const struct once_latch *latch) source once_latch_spin_timeout
Section titled “once_latch_spin_timeout”bool once_latch_spin_timeout(
const struct once_latch *latch,
time_ms_t timeout_ms
) source Macros
Section titled “Macros”ONCE_LATCH_INIT
Section titled “ONCE_LATCH_INIT”#define ONCE_LATCH_INIT(n) source Expansion
#define ONCE_LATCH_INIT(n) {.count = ATOMIC_VAR_INIT(n)}