@web-font-path: "roboto-debian.css";
v2.2.0 (RP2040)
Loading...
Searching...
No Matches
sem.h File Reference
`#include "pico/lock_core.h"`
Include dependency graph for sem.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures

struct | semaphore

## Typedefs

typedef struct semaphore | semaphore_t

## Functions

void | sem_init (semaphore_t *sem, int16_t initial_permits, int16_t max_permits)
| Initialise a semaphore structure.
int | sem_available (semaphore_t *sem)
| Return number of available permits on the semaphore.
bool | sem_release (semaphore_t *sem)
| Release a permit on a semaphore.
void | sem_reset (semaphore_t *sem, int16_t permits)
| Reset semaphore to a specific number of available permits.
void | sem_acquire_blocking (semaphore_t *sem)
| Acquire a permit from the semaphore.
bool | sem_acquire_timeout_ms (semaphore_t *sem, uint32_t timeout_ms)
| Acquire a permit from a semaphore, with timeout.
bool | sem_acquire_timeout_us (semaphore_t *sem, uint32_t timeout_us)
| Acquire a permit from a semaphore, with timeout.
bool | sem_acquire_block_until (semaphore_t *sem, absolute_time_t until)
| Wait to acquire a permit from a semaphore until a specific time.
bool | sem_try_acquire (semaphore_t *sem)
| Attempt to acquire a permit from a semaphore without blocking.