ter_tsk

Outline

Terminate task.

C format

 ER      ter_tsk ( ID tskid );


Assembly format

 MOV     A, #tskid
 CALL    !!_ter_tsk


Parameter(s)

I/O

Parameter

Description

I

 ID      tskid;
ID number of the task to be terminated.



Explanation

This service call forcibly moves a task specified by parameter tskid to the DORMANT state.

As a result, the target task is excluded from the RI78V4 scheduling subject.

If an activation request has been queued to the target task (the activation request counter is not set to 0x0) when this service call is issued, this service call moves the task to the DORMANT state, decrements the wakeup request counter (by subtracting 0x1 from the wakeup request counter), and then moves the task from the DORMANT state to the READY state.

Note 1 This service call does not return the OS resource that the target task acquired by issuing a service call such as sig_sem or get_mpf. The OS resource have been acquired must therefore be returned before issuing this service call.

Note 2 When moving a task to the DORMANT state, this service call initializes the following information to values that are set during task creation.

- Priority (current priority)

- Wakeup request count

- Suspension count

- Interrupt status

Return value

Macro

Value

Description

E_OK

0

Normal completion.

E_OBJ

-41

Object state error (specified task is in the DORMANT state).