当前位置: 技术问答>linux和unix
unix/linux平台下进程间通信的问题(消息队列)(紧急求助)
来源: 互联网 发布时间:2014-11-25
本文导语: 编译平台:pc ,redhat linux 7.2,256M ram 我定义的消息结构如下时,执行正确。 struct strtest { long int msgtype; /*消息类型*/ char buf[236]; }; 将buf改为buf[237]时,发送出错!即: struct strtest { long int msgtype; /*消息类型*...
编译平台:pc ,redhat linux 7.2,256M ram
我定义的消息结构如下时,执行正确。
struct strtest
{
long int msgtype; /*消息类型*/
char buf[236];
};
将buf改为buf[237]时,发送出错!即:
struct strtest
{
long int msgtype; /*消息类型*/
char buf[237];
};
注:
MSGMAX:8192
MSGMNB:16384
MSGMNI:16
我定义的消息结构如下时,执行正确。
struct strtest
{
long int msgtype; /*消息类型*/
char buf[236];
};
将buf改为buf[237]时,发送出错!即:
struct strtest
{
long int msgtype; /*消息类型*/
char buf[237];
};
注:
MSGMAX:8192
MSGMNB:16384
MSGMNI:16
|
建议把msgsnd 后errno 的值打印一下
看看具体错误
msgtype > 0
msgsize = 237
看看具体错误
msgtype > 0
msgsize = 237
|
消息队列满了?
|
说详细点,你是说msgsnd()调用出错吗?在什么情况下出的错?
|
是不是你发送的时候写死了发送长度为236?
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。