Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 msgsnd 和 msgrcv,我想知道如何在接收之前等待消息发送?
IE
进程 A 发出信号量让进程 B 做他的事情,
进程 B 发送消息,
进程 A 收到消息。
这只是打印一条空消息,因为没有告诉进程 A 等到 B 发送它,方法是什么?谢谢
如果进程 A 没有等待,您显然是在设置此标志
IPC_NOWAIT如果队列中没有请求类型的消息,则立即返回。系统调用失败并errno设置为ENOMSG。
IPC_NOWAIT
errno
ENOMSG
如果您想等待,或者如果您想在等待时做有用的工作,请不要使用该标志,请errno稍后检查并再次调用。