PHP
发布时间:2019-11-12 发布网站:大佬教程 code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PHP消息队列用法实例分析,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
本文实例讲述了php消息队列用法。分享给大家供大家参考,具体如下:
该消息队列用于linux下,进程通信
php;">
#根据路径和后缀创建一个id
$key = ftok(__DIR__,'R'
);
#获取队列中的消息
$q = msg_get_queue($key
);
#删除队列
msg_remove_queue($q
);
#获取队列的状态信息
$status = msg_stat_queue($q
);
print_r($status
);
echo "\n";
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,$errorcod
E);
var_dump($errorcod
E);
}
/
**
接收消息
resource $queue,int $desiredmsgtype,int &$msgtype,int $maxsize,mixed &$
message [,bool $un
serialize = 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,$type,200,$msg
);
var_dump($data
);
echo "\n";
var_dump($typ
E);
echo "\n";
var_dump($msg
);
echo "\n";
@H_
618_5@
队列状态信息:具体参考手册
1015
[msg_per
m.gid] => 100
[msg_per
m.mode] => 438
[msg_stime] => 0
[msg_rtime] => 0
[msg_
ctime] => 1411830331
[msg_qnum] => 0
[msg_qbytes] => 65536
[msg_lspid] => 0
[msg_lrpid] => 0
)
@H_
618_5@
更多关于php相关内容感兴趣的读者可查看本站专题:《》、《》、《》及《》
希望本文所述对大家php程序设计有所帮助。
大佬总结
以上是大佬教程为你收集整理的PHP消息队列用法实例分析全部内容,希望文章能够帮你解决PHP消息队列用法实例分析所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。