标签: c linux ipc
我已经构建了一个使用msgsnd and msgrcv的小示例,但有时msgrcv()会返回 E2BIG,我不确定为什么会这样,因为我通过的msgsz与msgsnd()和msgrcv()相同。
msgrcv()
E2BIG
msgsz
msgsnd()
答案 0 :(得分:2)
我没有意识到命名队列在运行之间是持久的,msgrcv()试图从以前运行的应用程序发布的队列中读取消息,该队列已经编译当时有更大的msgsz。