-
psnd_dtq
ipsnd_dtq
-
ER psnd_dtq ( ID dtqid, VP_INT data );
ER ipsnd_dtq ( ID dtqid, VP_INT data );
dtqidで指定されたデータ・キューの状況に応じて,以下の処理を行います。
- 受信待ちキューにタスクがキューイングされている場合
パラメータ
dataで指定されたデータを受信待ちキュー先頭のタスクに渡します。これにより,該当タスクは,受信待ちキューから外れ,WAITING状態(データ受信待ち状態)からREADY状態へ,またはWAITING-SUSPENDED状態からSUSPENDED状態へと遷移します。
- 受信待ちキューおよび送信待ちキューにタスクがキューイングされておらず,データ・キューに空き領域がある場合
パラメータ
dataで指定されたデータをデータ・キューに格納します。
- 受信待ちキューおよび送信待ちキューにタスクがキューイングされておらず,データ・キューに空き領域がない場合,または送信待ちキューにタスクがキューイングされている場合
戻り値としてE_TMOUTを返します。
備考 データを対象データ・キューのデータ・キュー領域に書き込む際の書き込み方法は,データの送信要求を行った順に行われます。
|
|
|
|
|
|
|
|
|
|
|
- CPUロック状態から本サービス・コールを発行した。
- 「PSW.IPL > カーネル割り込みマスクレベル」の状態から本サービス・コールを発行した。
|
|
|
- スタック・ポインタが呼出しタスクのユーザ・スタック領域の範囲外を指している。
|
|
|
|
|
|
|