消息队列中的多条消息
问题描述:
这可能是一个非常愚蠢的问题,但是谷歌搜索没有解决问题。我正在编写一个使用消息队列将一系列值发送到不同进程的程序。我已经完成了研究,表明我使用msgsnd()在队列和msgrcv()上存储消息来接收消息。我需要在队列中存储开始号码和结束号码。所以我的问题是我可以在这个队列中存储多条消息,如果是的话,我该如何去存储和检索它们? TIA为您提供所有帮助。消息队列中的多条消息
答
queue的概念意味着你可以在(msgsnd
)中放入一些东西,在队列中创建一条消息。要收到一条消息,您必须致电msgrcv
。每次接收通常只会返回一条消息,因此如果您发送n
消息,则必须收到n
消息。
队列通常被视为FIFO(先进先出),因此由第一个msgsnd
创建的消息将是由msgrcv
返回的第一条消息。 如果您通过网络(和/或集群中)运行消息队列,则这是一个弱点。由于网络延迟/故障转移/重试等消息可能出现乱序,因此通常建议构建具有所有必要信息的消息以正确处理这些情况。
Err..call'msgsend' and'msgrecv' for each message for each message。这个答案太明显了吗?还是你问一些更微妙的东西? – kaylum
这是不是在名称?这是一个消息**队列** - 所以你可以发送几条消息,你会按照你发给他们的相同顺序接收它们。 – immibis
是的,我知道人们会侮辱。谢谢 – jynx678