首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

关于消息队列的有关问题

2012-02-26 
关于消息队列的问题建立一个消息队列后,里面是空的吗?我有两个进程,一个是for{..............msgsndmsgrcv

关于消息队列的问题
建立一个消息队列后,里面是空的吗?

我有两个进程,一个是
for
{.......
.......
msgsnd
msgrcv}

另一个是
for
{msgrcv
......
......
msgsnd}
其中一个发1号消息,收2号消息
另一个收2号消息,发1号消息,都是设置成没收到规定消息时阻塞

按道理说应该能保证两个进程的循环语句同步执行吧

结果我执行时先是第二个进程接收到一个消息,返回了一个正值,这是为什么?消息队列刚建立就能收到消息?

[解决办法]
其中一个发1号消息,收2号消息
另一个收2号消息,发1号消息,都是设置成没收到规定消息时阻塞

是:
“另一个收1号消息,发2号消息”吧?

[解决办法]
建议建立2个消息队列,一个收,一个发,这样系统结构清晰,也好控制
[解决办法]
个人感觉异步就建两个队列吧, 同步就建一个.
[解决办法]
好像容易造成死锁情况

热点排行