phpメッセージキュー



このメッセージキューはlinuxでのプロセス通信に使用されます.
 
#           id
$key = ftok(__DIR__, 'R');

#        
$q = msg_get_queue($key);

#    
msg_remove_queue($q);

#         
$status = msg_stat_queue($q);

print_r($status);
echo "
"; for($i=0;$i<100;$i++) { /** * * resource $queue , int $msgtype , mixed $message [, bool $serialize = true [, bool $blocking = true [, int &$errorcode ]]] * $msgtype : * $message : * $serialize: * $blocking: , , , MSG_EAGAIN */ $flag = msg_send($q, 111, array('a'=>1), true, false , $errorcode); var_dump($errorcode); } /** resource $queue , int $desiredmsgtype , int &$msgtype , int $maxsize , mixed &$message [, bool $unserialize = true [, int $flags = 0 [, int &$errorcode ]]] $desiredmsgtype:0 , bigger 0: $maxsize: , 》 $msgtype: , $desiredmsgtype , 0 $flags:MSG_IPC_NOWAIT ( ), MSG_EXCEPT MSG_NOERROR */ $data = msg_receive($q, 0, $type, 200, $msg); var_dump($data); echo "
"; var_dump($type); echo "
"; var_dump($msg); echo "
";

 
キューステータス情報キューステータスジョウホウ:詳細リファレンスマニュアル
Array(
[msg_perm.uid] => 1015
[msg_perm.gid] => 100
[msg_perm.mode] => 438
[msg_stime] => 0
[msg_rtime] => 0
[msg_ctime] => 1411830331
[msg_qnum] => 0
[msg_qbytes] => 65536
[msg_lspid] => 0
[msg_lrpid] => 0
)
linuxの下でipcコマンドで表示して、ipcrmコマンドで削除することができます