-   
 tloc_mtx
 
-   
 
| 
 ER      tloc_mtx ( ID mtxid, TMO tmout );
 | 
 
 mtxidで指定されたミューテックスをロックします。
 
 ただし,本サービス・コールを発行した際,対象ミューテックスをロックすることができなかった(すでに他タスクがロックしていた)場合には,自タスクを対象ミューテックスの待ちキューにキューイングしたのち,RUNNING状態からタイムアウト付きのWAITING状態(ミューテックス待ち状態)へと遷移させます。
 
 なお,ミューテックス待ち状態の解除は,以下の場合に行われ,ミューテックス待ち状態からREADY状態へと遷移します。
 
  
|  |  | 
| 
 unl_mtxの発行により,対象ミューテックスのロック状態が解除された
 |  | 
| 
 ext_tskの発行により,対象ミューテックスのロック状態が解除された
 |  | 
| 
 ter_tskの発行により,対象ミューテックスのロック状態が解除された
 |  | 
| 
 rel_waiの発行により,ミューテックス待ち状態を強制的に解除された
 |  | 
|  |  | 
|  |  | 
 
 備考1	 自タスクを対象ミューテックスの待ちキューにキューイングする際のキューイング方式は,コンフィギュレーション時に定義された順(FIFO順,優先度順)に行われます。
 
 備考2	 RI850V4では,自タスクがロックしているミューテックスに対して本サービス・コールを再発行(ミューテックスの多重ロック)した際には,戻り値としてE_ILUSEを返します。
 
 備考3	 待ち時間
tmoutにTMO_FEVRが指定された際には“
loc_mtxと同等の処理”を,TMO_POLが指定された際には“
ploc_mtxと同等の処理”を実行します。
 
 
|  |  |  | 
|  |  |  | 
|  |  | 
 待ち時間の指定が不正(tmout <TMO_FEVR)である
 | 
|  |  | 
 -	 mtxid >生成されているミューテックスの最大ID
 | 
|  |  | 
 -	 CPUロック状態から本サービス・コールを発行した
 
 -	 ディスパッチ禁止状態から本サービス・コールを発行した
 | 
|  |  | 
 すでにロック状態へと遷移させているミューテックスに対して本サービス・コールを発行した
 | 
|  |  |  | 
|  |  |  | 
|  |  |  |