五、消息队列与定名管道的比较
调用成功时,该函数返回放到接收缓存区中的字节数,消息被复制到由msg_ptr指向的用户分派的缓存区中,然后删除消息队列中的对应消息。掉败时返回-1.
该函数用来把消息添加到消息队列中。它的原型为:
消息队列跟定名管道有不少的雷同之处,经由过程与定名管道一样,消息队列进行通信的过程可所以不相干的过程,同时它们都是经由过程发送和接收的方法来传递数据的。在定名管道中,发送数据用write,吸法术据用read,则在消息队列中,发送数据用msgsnd,吸法术据用msgrcv。并且它们对每个数据都有一个最大年夜长度的限制。
与定名管道比拟,消息队列的优势在于,1、消息队列也可以自力于发送和接收过程而存在,大年夜而清除了在同步定名管道的打开和封闭时可能产生的艰苦。2、同时经由过程发送消息还可以避免定名管道的同步和壅塞问题,不须要由过程本身来供给同步办法。3、接收法度榜样可以经由过程消息类型有选择地吸法术据,而不是像定名管道中那样,只能默认地接收。
【编辑推荐】
- Linux体系中修复SambaCry马脚(CVE-2017-7494)
- Linux GRUB2设备简介
- Linux+Apache+Mysql+PHP优化技能
- 2017十大年夜最佳用于隐私和安然保护的Linux发行版
- Linux常用机能分析敕令
推荐阅读
Windows 10 Build 16215带来的11大Fall Creators Update最佳功能_IT技术周刊第506期
【义务编辑:刘晶晶 TEL:(010)68476606】 >>>详细阅读
本文标题:Linux进程间通信——使用消息队列
地址:http://www.17bianji.com/lsqh/35826.html
1/2 1