System 0x2f
メッセージ取得
【機能】
システムメッセージキューよりメッセージを取得します。
【関数】
int GetMsg( int *msg )
|
{
|
return trapa_svc( 0x2f, pid, prm, flg );
|
}
|
【入力】
msg
| メッセージ
| メッセージを格納する領域の先頭アドレス
|
【出力】
| +0
+1
+2
+3
| | | |
msg+00
自プロセスID
|
メッセージ発行元プロセスID
| |
msg+04
メッセージ種別
| コマンドコード
パラメータ長
| | |
msg+08
パラメータまたはパラメータの先頭アドレス
| |
| ERR_PARAM
| パラメータエラー
|
| ERR_PID
| 不正プロセスID
|
【解説】
自プロセスID宛てのメッセージをメッセージキューから取得します。
該当するメッセージがキューにない場合、プロセス制御の切り替えを行い、メッセージが他のプロセスから送られるまでウエイトします。他に動作中のプロセスがない場合は、空のメッセージを返します。
メッセージのアドレスを格納するポインタがNULLの場合、パラメータエラーを返します。
システムプロセスからのメッセージにつきましては「
メッセージリファレンス
」および「メッセージ追加」ファンクションの【注意】を参照して下さい。
【関連項目】
メモリ取得 メモリ解放 メッセージ追加 指定時間ウエイト