ter_tsk

概要

タスクの強制終了

C言語形式

 ER      ter_tsk ( ID tskid );


パラメータ

I/O

パラメータ

説明

I

 ID      tskid;
タスクのID



機能

tskidで指定されたタスクを強制的にDORMANT状態へと遷移させます。これにより,対象タスクは,RI850V4のスケジューリング対象から除外されます。

ただし,本サービス・コールを発行した際,対象タスクの起動要求がキューイングされていた(起動要求カウンタが0x0以外の値であった)場合には,対象タスクの状態操作(DORMANT状態への状態遷移処理)を行ったのち,対象タスクの起動(DORMANT状態からREADY状態への状態遷移処理)もあわせて行われます。

備考 本サービス・コールでは,対象タスクの状態操作(DORMANT状態への状態遷移処理)を行う際に,

- 優先度(現在優先度)

- 起床要求数

- サスペンド要求数

- 割り込み状態

といった情報をタスク生成時に設定される値で初期化しています。
また,対象タスクがミューテックスをロックしていた場合には,ロック状態の解除(unl_mtxと同等の処理)もあわせて行われます。


戻り値

マクロ

数値

意味

E_OK

0

正常終了

E_ID

-18

IDの指定が不正である

- tskid≦0x0

- tskid>生成されているタスクの最大ID

E_CTX

-25

コンテキスト・エラー

- 非タスクから本サービス・コールを発行した

- CPUロック状態から本サービス・コールを発行した

E_ILUSE

-28

対象タスクが自タスクである

E_OBJ

-41

対象タスクがDORMANT状態である

E_NOEXS

-42

対象タスクが生成されていない