Linux c 下 创建的消息队列 msqid 值运行一段时间后会变换为 0

2018-10-16 16:25:38 +08:00
 marvinGet

如题。 在 linux 下,用 C 写了个系统。其中用到了消息队列通信。

系统中有两个进程,一个发送消息 msgsnd(),一个接收消息 msgrecv()。

每次启动系统的时候消息 msqid 值都是非 0,运行一段时间后(可以正常运行),这个 msqid 值会偶然变为 0 (有时候会变为 0,用 ipcs 命令可以查看到)。导致收发消息错误。

哪位大神有碰到过如此诡异的事情吗,请教一下。

不会发图 请见谅

1635 次点击
所在节点    程序员
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/498168

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX