-
set_flg
iset_flg
-
ER set_flg ( ID flgid, FLGPTN setptn );
ER iset_flg ( ID flgid, FLGPTN setptn );
|
flgidで指定されたイベントフラグのビット・パターンと
setptnで指定されたビット・パターンの論理和ORをとり,その結果を対象イベントフラグにセットします。
なお,本サービス・コールを発行した際,対象イベントフラグの待ちキューにキューイングされているタスクの要求条件を満足した場合には,ビット・パターンのセット(論理和ORの設定処理)とともに,該当タスクを待ちキューから外します。これにより,該当タスクは,WAITING状態(イベントフラグ待ち状態)からREADY状態へ,またはWAITING-SUSPENDED状態からSUSPENDED状態へと遷移します。
備考1 本サービス・コールを発行した際,対象イベントフラグのビット・パターンがB'1100,
setptnで指定されたビット・パターンがB'1010であった場合には,対象イベントフラグのビット・パターンはB'1110となります。
備考2 対象イベントフラグにTA_WMUL属性が指定されていた場合,“本サービス・コールの発行に伴い要求条件を満足したか否か”の判定対象となるタスクは,TA_CLR属性も指定されているか否かにより異なります。
- “指定あり”の場合
待ちキューにキューイングされている先頭タスクから要求条件を満足したタスクまでが判定対象となります。
- “指定なし”の場合
待ちキューにキューイングされている全タスクが判定対象となります。
|
|
|
|
|
|
|
|
- flgid>生成されているイベントフラグの最大ID
|
|
|
|
|
|
|