Everything

rel_wai

irel_wai

Outline
Release task from waiting.
C format
 ER      rel_wai (ID tskid);
 ER      irel_wai (ID tskid);
Parameter(s)
I/O
Parameter
Description
I
 ID      tskid;
ID number of the task.

Explanation
These service calls forcibly cancel the WAITING state of the task specified by parameter tskid.
As a result, the target task unlinked from the wait queue and is moved from the WAITING state to the READY state, or from the WAITING-SUSPENDED state to the SUSPENDED state.
"E_RLWAI" is returned from the service call that triggered the move to the WAITING state (slp_tsk, wai_sem, or the like) to the task whose WAITING state is cancelled by this service call.
Note 1 These service calls do not perform queuing of forced cancelation requests. If the target task is neither in the WAITING state nor WAITING-SUSPENDED state, "E_OBJ" is returned.
Note 2 The SUSPENDED state is not cancelled by these service calls.
Return value
Macro
Value
Description
E_OK
0
Normal completion.
E_ID
-18
Invalid ID number.
- tskid < 0
- tskid > VTMAX_TSK
E_CTX
-25
Context error.
- This service call was issued in the CPU locked state.
- The irel_wai was issued from task.
- The rel_wai was issued from non-task.
- This service call was issued in the status "PSW.IPL > kernel interrupt mask level".
E_MACV
-26
Memory access violation. (only for rel_wai)
- Stack pointer points out of user stack for invoking task.
E_OBJ
-41
Object state error.
- Specified task is neither in the WAITING state nor WAITING-SUSPENDED state.
E_NOEXS
-42
Non-existent object.
- The task specified by tskid does not exist.