Semaphore
RTOS semaphore functions. More...
Functions | |
zos_result_t | zn_rtos_semaphore_init (zos_semaphore_t *semaphore) |
Initializes a semaphoreInitializes a counting semaphore. More... | |
zos_result_t | zn_rtos_semaphore_set (zos_semaphore_t *semaphore) |
Set (post/put/increment) a semaphoreSet (post/put/increment) a semaphore. More... | |
zos_result_t | zn_rtos_semaphore_get (zos_semaphore_t *semaphore, uint32_t timeout_ms) |
Get (wait/decrement) a semaphoreAttempts to get (wait/decrement) a semaphore. More... | |
void | zn_rtos_semaphore_reset (zos_semaphore_t *semaphore) |
Set counting semaphore to zero. More... | |
zos_result_t | zn_rtos_semaphore_deinit (zos_semaphore_t *semaphore) |
De-initialise a semaphoreDeletes a semaphore created with zn_rtos_semaphore_init() More... | |
Detailed Description
RTOS semaphore functions.
Function Documentation
zos_result_t zn_rtos_semaphore_deinit | ( | zos_semaphore_t * | semaphore | ) |
De-initialise a semaphoreDeletes a semaphore created with zn_rtos_semaphore_init()
- Parameters
-
semaphore
: a pointer to the semaphore handle
- Returns
- ZOS_SUCCESS : on success.
- ZOS_ERROR : if an error occurred
zos_result_t zn_rtos_semaphore_get | ( | zos_semaphore_t * | semaphore, |
uint32_t | timeout_ms |
||
) |
Get (wait/decrement) a semaphoreAttempts to get (wait/decrement) a semaphore.
If semaphore is at zero already, then the calling thread will be suspended until another thread sets the semaphore with zn_rtos_semaphore_set()
- Parameters
-
semaphore
: a pointer to the semaphore handle timeout_ms
the number of milliseconds to wait before returning
- Returns
- ZOS_SUCCESS : on success.
- ZOS_ERROR : if an error occurred
zos_result_t zn_rtos_semaphore_init | ( | zos_semaphore_t * | semaphore | ) |
Initializes a semaphoreInitializes a counting semaphore.
- Parameters
-
semaphore
: a pointer to the semaphore handle to be initialised
- Returns
- ZOS_SUCCESS : on success.
- ZOS_ERROR : if an error occurred
void zn_rtos_semaphore_reset | ( | zos_semaphore_t * | semaphore | ) |
Set counting semaphore to zero.
zos_result_t zn_rtos_semaphore_set | ( | zos_semaphore_t * | semaphore | ) |
Set (post/put/increment) a semaphoreSet (post/put/increment) a semaphore.
- Parameters
-
semaphore
: a pointer to the semaphore handle to be set
- Returns
- ZOS_SUCCESS : on success.
- ZOS_ERROR : if an error occurred