eCosTM Reference Manual
Prev | Chapter 6. µITRON API | Next

# Task-Dependent Synchronization Functions

These functions are fully supported in this release:

`ER sus_tsk`(ID tskid);

`ER rsm_tsk`(ID tskid);

`ER frsm_tsk`(ID tskid);

`ER slp_tsk`(void);

`ER tslp_tsk`(TMO tmout);

`ER wup_tsk`(ID tskid);

`ER can_wup`(INT *p_wupcnt, ID tskid);

## Error checking

The following conditions are only checked for, and only return errors if `CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS` is enabled (see the section called Option: Return Error Codes for Bad Params in Chapter 18):

- invalid tskid; less than 1 or greater than CYGNUM_UITRON_TASKS (the section called Option: Number of tasks in Chapter 18) returns E_ID

- `wup_tsk()`, `sus_tsk()`, `rsm_tsk()`, `frsm_tsk()` on the calling task returns E_OBJ

- dispatching is enabled in `tslp_tsk()` and `slp_tsk()`, or E_CTX

- tmout must be positive, otherwise E_PAR

- return value pointer in `can_wup()` is a valid pointer, or E_PAR

The following conditions are checked for, and can return error codes, regardless of the setting of `CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS`:

- When create and delete functions `cre_tsk()` and `del_tsk()` are supported, all calls which use a valid task ID number check that the task exists; if not, E_NOEXS is returned

- `sus_tsk()`: the task must not be dormant, else E_OBJ

- `frsm/rsm_tsk()`: the task must be suspended, else E_OBJ

- `tslp/slp_tsk()`: return codes E_TMOUT, E_RLWAI and E_DLT are returned depending on the reason for terminating the sleep

- `wup_tsk()` and `can_wup()`: the task must not be dormant, or E_OBJ is returned

Prev | Home | Next
µITRON API | Up | Synchronization and Communication Functions