linux 消息队列接收端如何知道有消息过来了

各位好!最近用消息队列做多进程数据传递,想请教一个问题,数据接收端msgrcv如何知道队列里是否有消息呢,我看网上的例子一般都是while(1)循环接收,有没有对消息队列... 各位好!最近用消息队列做多进程数据传递,想请教一个问题,数据接收端msgrcv如何知道队列里是否有消息呢,我看网上的例子一般都是while(1)循环接收,有没有对消息队列监听判断之类的处理?还有,是否调用msgrcv函数之后,队列里的该消息就自动删除了?非常感谢 展开
 我来答
AIPOYUN
2013-08-08
知道答主
回答量:9
采纳率:0%
帮助的人:6.3万
展开全部
好像没有判断消息队列是否有消息可读的机制(不像网络的select可通过结果得到可读可写的socket状态),你只要用msgrcv()循环去读取就好了 如果消息有类型 可以根据特定的类型去读,不设置类型去读的话就会读走队列的第一条,队列的消息读取之后就从队列里面移出了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式