rsm_tsk

irsm_tsk

概要

SUSPENDED状態の解除

C言語形式

 ER      rsm_tsk ( ID tskid );
 
 ER      irsm_tsk ( ID tskid );
 

アセンブリ言語形式

 MOV     A, #tskid
 CALL    !!_rsm_tsk
 
 MOV     A, #tskid
 CALL    !!_irsm_tsk
 

パラメータ

I/O

パラメータ

説明

I

 ID      tskid;
タスクのID

 

機能

tskidで指定されたタスクのサスペンド要求カウンタから0x1を減算したのち,対象タスクのSUSPENDED状態を解除します。

これにより,対象タスクは,SUSPENDED状態からREADY状態へ,またはWAITING-SUSPENDED状態からWAITING状態へと遷移します。

ただし,本サービス・コールを発行した際,サスペンド要求がキューイングされていた(減算結果が0x0以外)場合には,状態操作処理は実行されず,サスペンド要求カウンタの減算処理のみが実行されます。

備考1 本サービス・コールを発行した際,対象タスクがREADY状態へと遷移する場合は,該当タスクの優先度に対応したレディ・キューの最後尾にキューイングし直す処理もあわせて実行されます。

備考2 本サービス・コールでは,解除要求のキューイングが行われません。このため,対象タスクがSUSPENDED状態,またはWAITING-SUSPENDED状態以外の場合には,戻り値として“E_OBJ”が返されます。

戻り値

マクロ

数値

意味

E_OK

0

正常終了

E_OBJ

-41

対象タスクがSUSPENDED状態,またはWAITING-SUSPENDED状態でない