msg_send
(PHP 4 >= 4.3.0, PHP 5)
msg_send — メッセージキューにメッセージを送信する
説明
msg_send() は、queue で指定したメッセージキューに対して msgtype で指定した型 (0 より大きい数値である必要があります) のメッセージ message を送信します。
パラメータ
- queue
-
- msgtype
-
- message
-
- serialize
-
オプションのパラメータ serialize は、 message を送信する方法を制御します。 serialize のデフォルト値は TRUE で、 この場合 message が送信される前に セッションモジュールと同じ方法でシリアライズされます。 これにより、配列やオブジェクトのような複雑な形式のデータを 他の PHP スクリプトに送信することが可能となります。 また、もし WDDX シリアライザを使用しているなら、あらゆる WDDX 互換クライアントに対して同じことが可能となります。
- blocking
-
メッセージがキューに収まらないほど大きい場合は、他のプロセスが 現在キューにあるメッセージを読み込んでキューの空き容量が確保されれまで スクリプトの実行を待ち続けます。この関数はブロックモードでコール されます。オプションのパラメータ blocking を FALSE に設定することでブロックモードではなくすることが可能で、 この場合、もしキューの空き容量よりも大きなメッセージを送信すると msg_send() はすぐに FALSE を返します。 また、オプションのパラメータ errorcode を MSG_EAGAIN に設定すると、 このような場合に少し時間をおいてメッセージを再度送信します。
- errorcode
-
返り値
成功した場合に TRUE を、失敗した場合に FALSE を返します。
処理が正常に完了すると、メッセージキューデータ構造体は以下のように更新されます。 msg_lspid には呼び出し元のプロセス ID が 設定され、msg_qnum が 1 増加し、 msg_stime が現在の時刻に設定されます。