quot;);
exit(EXIT_FAILURE);
}
printf("消息接收成功,text=%s\n", message.text);
return 0;
}
效果演示
编译上面的sendmsg.c 和 rsvmsg.c文件,得到一个两个程序:sendmsg和rsvmsg。
[wayne@wayne:~] ./sendmsg
消息发送成功,text=Hello, World!
[wayne@wayne:~] ./rsvmsg
消息接收成功,text=Hello, World!
[wayne@wayne:~] ./rsvmsg
此时rsvmsg会阻塞在这里,等待消息
[wayne@wayne:~] ./sendmsg
消息发送成功,text=Hello, World!
sendmsg发送消息后,rsvmsg进程,收到消息,打印消息
消息接收成功,text=Hello, World!
小结
总的来说,Linux 消息队列是一种高效的进程间通信机制,它可以在多个进程之间共享,允许进程异步地发送和接收消息。
以上,如果觉得对你有帮助,点个赞再走吧,这样@知微之见也有更新下去的动力!
也欢迎私信我,一起交流!