为什么msgrcv()返回errno=7(E2BIG)的错误?

为什么msgrcv()返回errno=7(E2BIG)的错误?,c,linux,ipc,C,Linux,Ipc,我构建了一个小示例,使用,但有时msgrcv()返回 E2BIG,我不知道这是为什么,因为我传递给msgsnd()和msgrcv()的msgsz是相同的,当时是用一个更大的msgsz编译的

我构建了一个小示例,使用,但有时
msgrcv()
返回
E2BIG
,我不知道这是为什么,因为我传递给
msgsnd()
msgrcv()
msgsz
是相同的
,当时是用一个更大的
msgsz
编译的